[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <1381906601.5472.62.camel@marge.simpson.net>
Date: Wed, 16 Oct 2013 08:56:41 +0200
From: Mike Galbraith <bitbucket@...ine.de>
To: Chuansheng Liu <chuansheng.liu@...el.com>
Cc: mingo@...nel.org, peterz@...radead.org,
linux-kernel@...r.kernel.org
Subject: Re: sched/rt: Pick up the throttled rt tasks in case no other
non-rt tasks
On Wed, 2013-10-16 at 23:43 +0800, Chuansheng Liu wrote:
> Meet the case that on CPU2, there are just two tasks to be run,
> one is one rt task A, another is idle task, but at this time,
> and the rt_rq is throttled.
>
> CPU1 CPU2
> staying in idle task;
> waking up rt task A on
> target CPU 2;
>
> exiting from idle task;
> DO schedule()
> pick up RT next task
> pick_next_task_rt()
> _pick_next_task_rt()
> rt_rq is throttled
> return NULL rt task to be picked
>
> CPU2 then went into idle task AGAIN;
> after 2s, CPU2 is waken up again;
> rt task A is get running;
>
> Here rt task A is delayed for some time, even when CPU2 is in idle state.
>
> so in case there are just rt tasks running, we can pick up one of them
> even rt_rq is throttled.
And shortly thereafter, a SCHED_NORMAL task wakes.. only to find that
its alleged bodyguard slit its throat while it slept. Bad bodyguard.
-Mike
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists