[Devel] [PATCH rh7 v2 2/2] sched: Fix double put_prev_task_fair() because of trigger_cpulimit_balance()

Vladimir Davydov vdavydov at parallels.com
Thu Aug 20 09:45:08 PDT 2015


On Thu, Aug 20, 2015 at 07:10:07PM +0300, Kirill Tkhai wrote:
> The scheduller code is written with the assumption, that rq->curr task can't
> be already put. For example, in sched_move_task() we check for
> 
> 	running = task_current(rq, tsk);
> 
> and call put_prev_task() if "running" is true.
> 
> When we're unlocking rq->lock in trigger_cpulimit_balance(), the task has
> already been put, so concurrent cpu_cgroup_attach_task()->sched_move_task()
> puts it one more time.
> 
> https://jira.sw.ru/browse/PSBM-35082
> 
> Signed-off-by: Kirill Tkhai <ktkhai at odin.com>
...
> diff --git a/scripts/kconfig/conf b/scripts/kconfig/conf
> index 2b2a841804a7417cdccd1824c41d9e9b48671dbe..3d88bf07224c06faa0445dfa8d24ca0bf5a21d4c 100755
> GIT binary patch

CRAP^^^

Other than that, patch looks OK,

Reviewed-by: Vladimir Davydov <vdavydov at parallels.com>



More information about the Devel mailing list