sched/hmp: Disable interrupts when resetting all task stats
Taking the pi_lock without disabling interrupts in reset_all_task_stats() is problematic. In that an interrupt can end up waking a task which in turn needs the pi_lock again causing a deadlock. Disable interrupts along with taking the lock to avoid this problem. Change-Id: If27cb2bb3fcaafa5c8435f3c2e0e4be9b8f1e987 Signed-off-by: Syed Rameez Mustafa <rameezmustafa@codeaurora.org>
This commit is contained in:
parent
bcd8ec9210
commit
6385a475e0
1 changed files with 2 additions and 2 deletions
|
@ -3106,9 +3106,9 @@ static void reset_all_task_stats(void)
|
|||
|
||||
read_lock(&tasklist_lock);
|
||||
do_each_thread(g, p) {
|
||||
raw_spin_lock(&p->pi_lock);
|
||||
raw_spin_lock_irq(&p->pi_lock);
|
||||
reset_task_stats(p);
|
||||
raw_spin_unlock(&p->pi_lock);
|
||||
raw_spin_unlock_irq(&p->pi_lock);
|
||||
} while_each_thread(g, p);
|
||||
read_unlock(&tasklist_lock);
|
||||
}
|
||||
|
|
Loading…
Add table
Reference in a new issue