Commit 8a04c2ee authored by Linus Torvalds's avatar Linus Torvalds

Merge branch 'sched-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip

Pull scheduler fix from Thomas Gleixner:
 "Handle the worker management in situations where a task is scheduled
  out on a PI lock contention correctly and schedule a new worker if
  possible"

* 'sched-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
  sched/core: Schedule new worker even if PI-blocked
parents 05bbb936 b0fdc013
...@@ -3904,7 +3904,7 @@ void __noreturn do_task_dead(void) ...@@ -3904,7 +3904,7 @@ void __noreturn do_task_dead(void)
static inline void sched_submit_work(struct task_struct *tsk) static inline void sched_submit_work(struct task_struct *tsk)
{ {
if (!tsk->state || tsk_is_pi_blocked(tsk)) if (!tsk->state)
return; return;
/* /*
...@@ -3920,6 +3920,9 @@ static inline void sched_submit_work(struct task_struct *tsk) ...@@ -3920,6 +3920,9 @@ static inline void sched_submit_work(struct task_struct *tsk)
preempt_enable_no_resched(); preempt_enable_no_resched();
} }
if (tsk_is_pi_blocked(tsk))
return;
/* /*
* If we are going to sleep and we have plugged IO queued, * If we are going to sleep and we have plugged IO queued,
* make sure to submit it to avoid deadlocks. * make sure to submit it to avoid deadlocks.
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment