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

Kirill Tkhai ktkhai at odin.com
Thu Aug 20 09:52:33 PDT 2015



On 20.08.2015 19:45, Vladimir Davydov wrote:
> 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^^^

Oh, sorry for that.

> 
> Other than that, patch looks OK,
> 
> Reviewed-by: Vladimir Davydov <vdavydov at parallels.com>
> 



More information about the Devel mailing list