mirror of
https://github.com/torvalds/linux.git
synced 2024-11-29 23:51:37 +00:00
Providers:
- qcom: Fix enabled_corner aggregation for rpmhpd - arm: Fix NULL dereference on scmi_perf_domain removal -----BEGIN PGP SIGNATURE----- iQJLBAABCgA1FiEEugLDXPmKSktSkQsV/iaEJXNYjCkFAmXhpP8XHHVsZi5oYW5z c29uQGxpbmFyby5vcmcACgkQ/iaEJXNYjCnHZBAAynC53E42DsyteCF6uqhatamj 06pNVGQe+7GqFQfpDgvwobM3mznAOIiEnh1omUqoA0eQH8ZM411fWDOflqpey+et sE2NLSPmTc7UJdCoAxXVspC+cVI0e+ZE8u2752FG1ARaEO7z+jlu/QPLkWQ5/kgh kuZVDtGQv6uQhG+ZsUqnaHfcrvZIB7Q+sD2YiGxTka3/c8HWbig0x2gQp/fwQO3G AAmS7HudBvctqWCDnjSTDv426d2rXdyDeUEDVWg/2NC8I64QRyIg4DZ/dI4oJvqa cJdHSfLZRhGFap0A4143cn7u054zZD430xWeMKheOwHjGrtmxhEcGHYGODCOjaVo R4vaeE35rnhqCLjiRHkOiuQQmysx/I/hlbu+DVkGJat9mKmwbrJvHKzO1AFD2kuX D9cRMTFn6T2vm44Av71l1Sm9fExYRsyHgdtatABPPd7ede+Y8rBs9AHtEU1Xd2Wb 3moJsHinfZ//ffVsKsIe7EkUTp8Jk8OPZKkv+gbJczl4qvCt9Gu77U1cAygigBOF l4VyhWM7XAFU+aENZ9uob8S2NptXmYkZB1hv1ZKlnGt3+W88naY/BE533ifdGMXf DqYhjtWZG5LMVn0VkvJDxCJOM0MTE30yMCa8KeJSZfCgl+SbpsShwOFCzxuZlVHJ 5lcuRv2v9ENh41khTi8= =e1Rr -----END PGP SIGNATURE----- Merge tag 'pmdomain-v6.8-rc4' of git://git.kernel.org/pub/scm/linux/kernel/git/ulfh/linux-pm Pull pmdomain fixes from Ulf Hansson: - qcom: Fix enabled_corner aggregation for rpmhpd - arm: Fix NULL dereference on scmi_perf_domain removal * tag 'pmdomain-v6.8-rc4' of git://git.kernel.org/pub/scm/linux/kernel/git/ulfh/linux-pm: pmdomain: qcom: rpmhpd: Fix enabled_corner aggregation pmdomain: arm: Fix NULL dereference on scmi_perf_domain removal
This commit is contained in:
commit
fafbad4a20
@ -159,6 +159,9 @@ static void scmi_perf_domain_remove(struct scmi_device *sdev)
|
||||
struct genpd_onecell_data *scmi_pd_data = dev_get_drvdata(dev);
|
||||
int i;
|
||||
|
||||
if (!scmi_pd_data)
|
||||
return;
|
||||
|
||||
of_genpd_del_provider(dev->of_node);
|
||||
|
||||
for (i = 0; i < scmi_pd_data->num_domains; i++)
|
||||
|
@ -692,6 +692,7 @@ static int rpmhpd_aggregate_corner(struct rpmhpd *pd, unsigned int corner)
|
||||
unsigned int active_corner, sleep_corner;
|
||||
unsigned int this_active_corner = 0, this_sleep_corner = 0;
|
||||
unsigned int peer_active_corner = 0, peer_sleep_corner = 0;
|
||||
unsigned int peer_enabled_corner;
|
||||
|
||||
if (pd->state_synced) {
|
||||
to_active_sleep(pd, corner, &this_active_corner, &this_sleep_corner);
|
||||
@ -701,9 +702,11 @@ static int rpmhpd_aggregate_corner(struct rpmhpd *pd, unsigned int corner)
|
||||
this_sleep_corner = pd->level_count - 1;
|
||||
}
|
||||
|
||||
if (peer && peer->enabled)
|
||||
to_active_sleep(peer, peer->corner, &peer_active_corner,
|
||||
if (peer && peer->enabled) {
|
||||
peer_enabled_corner = max(peer->corner, peer->enable_corner);
|
||||
to_active_sleep(peer, peer_enabled_corner, &peer_active_corner,
|
||||
&peer_sleep_corner);
|
||||
}
|
||||
|
||||
active_corner = max(this_active_corner, peer_active_corner);
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user