[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20140305115942.GX9987@twins.programming.kicks-ass.net>
Date: Wed, 5 Mar 2014 12:59:42 +0100
From: Peter Zijlstra <peterz@...radead.org>
To: Kirill Tkhai <ktkhai@...allels.com>
Cc: linux-kernel@...r.kernel.org, Juri Lelli <juri.lelli@...il.com>,
Ingo Molnar <mingo@...hat.com>, tkhai@...dex.ru
Subject: Re: [PATCH tip] sched/rt: Fix picking RT and DL tasks from empty
queue
On Tue, Mar 04, 2014 at 07:25:46PM +0400, Kirill Tkhai wrote:
> The problems:
>
> 1)We check for rt_nr_running before call of put_prev_task().
> If previous task is RT, its rt_rq may become throttled
> and dequeued after this call.
>
> In case of p is from rt->rq this just causes picking a task
> from throttled queue, but in case of its rt_rq is child
> we are guaranteed catch BUG_ON.
>
> 2)The same with deadline class. The only difference we operate
> on only dl_rq.
>
> This patch fix all above and it adds a small skip in DL update
> like we've already done for RT class:
>
> if (unlikely((s64)delta_exec <= 0))
> return;
>
> This will optimize sequential update_curr_dl() calls a little.
>
Ah indeed, good catch that. Thanks!
--
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