qos: wake up cores based on the qos updated cpu mask
If the qos value is increased only for a subset of cpu's aggregated qos for those cpu's is still the previous value. This is because the qos request list is maintained per request and not per cpu. In this case as there is no change in aggregated qos value, these cpu's are not wokenup to take the new qos value into effect. So wakeup cpu's even if the aggregated qos value does not change but the cpumask changes. Change-Id: If5a4a100108e85e04beb77e5249bd6c452672edf Signed-off-by: Anil Kumar Mamidala <amami@codeaurora.org>
This commit is contained in:
parent
1a0c120d47
commit
04d0a36e27
|
@ -246,7 +246,11 @@ int pm_qos_update_target(struct pm_qos_constraints *c,
|
|||
|
||||
spin_unlock_irqrestore(&pm_qos_lock, flags);
|
||||
|
||||
if (prev_value != curr_value) {
|
||||
/*
|
||||
* if cpu mask bits are set, call the notifier call chain
|
||||
* to update the new qos restriction for the cores
|
||||
*/
|
||||
if (!cpumask_empty(&cpus)) {
|
||||
blocking_notifier_call_chain(c->notifiers,
|
||||
(unsigned long)curr_value,
|
||||
&cpus);
|
||||
|
|
Loading…
Reference in New Issue