diff options
Diffstat (limited to 'kernel/sched.c')
-rw-r--r-- | kernel/sched.c | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/kernel/sched.c b/kernel/sched.c index 6b02276baaa6..88a17c7128c3 100644 --- a/kernel/sched.c +++ b/kernel/sched.c | |||
@@ -7291,7 +7291,7 @@ void normalize_rt_tasks(void) | |||
7291 | unsigned long flags; | 7291 | unsigned long flags; |
7292 | struct rq *rq; | 7292 | struct rq *rq; |
7293 | 7293 | ||
7294 | read_lock_irq(&tasklist_lock); | 7294 | read_lock_irqsave(&tasklist_lock, flags); |
7295 | do_each_thread(g, p) { | 7295 | do_each_thread(g, p) { |
7296 | /* | 7296 | /* |
7297 | * Only normalize user tasks: | 7297 | * Only normalize user tasks: |
@@ -7317,16 +7317,16 @@ void normalize_rt_tasks(void) | |||
7317 | continue; | 7317 | continue; |
7318 | } | 7318 | } |
7319 | 7319 | ||
7320 | spin_lock_irqsave(&p->pi_lock, flags); | 7320 | spin_lock(&p->pi_lock); |
7321 | rq = __task_rq_lock(p); | 7321 | rq = __task_rq_lock(p); |
7322 | 7322 | ||
7323 | normalize_task(rq, p); | 7323 | normalize_task(rq, p); |
7324 | 7324 | ||
7325 | __task_rq_unlock(rq); | 7325 | __task_rq_unlock(rq); |
7326 | spin_unlock_irqrestore(&p->pi_lock, flags); | 7326 | spin_unlock(&p->pi_lock); |
7327 | } while_each_thread(g, p); | 7327 | } while_each_thread(g, p); |
7328 | 7328 | ||
7329 | read_unlock_irq(&tasklist_lock); | 7329 | read_unlock_irqrestore(&tasklist_lock, flags); |
7330 | } | 7330 | } |
7331 | 7331 | ||
7332 | #endif /* CONFIG_MAGIC_SYSRQ */ | 7332 | #endif /* CONFIG_MAGIC_SYSRQ */ |