[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <cbb0cba9-e8d4-6ee0-6c7d-2ac635872432@redhat.com>
Date: Mon, 2 Oct 2023 11:14:25 +0200
From: Daniel Bristot de Oliveira <bristot@...hat.com>
To: Valentin Schneider <vschneid@...hat.com>,
linux-kernel@...r.kernel.org
Cc: Dietmar Eggemann <dietmar.eggemann@....com>,
Ingo Molnar <mingo@...hat.com>,
Juri Lelli <juri.lelli@...hat.com>,
Peter Zijlstra <peterz@...radead.org>,
Steven Rostedt <rostedt@...dmis.org>,
Vincent Guittot <vincent.guittot@...aro.org>,
Thomas Gleixner <tglx@...utronix.de>,
Sebastian Andrzej Siewior <bigeasy@...utronix.de>
Subject: Re: [PATCH] sched/deadline: Make dl_rq->pushable_dl_tasks updates
drive dl_rq->overloaded
On 9/28/23 17:02, Valentin Schneider wrote:
> dl_nr_migratory is increased whenever a DL entity is enqueued and it has
> nr_cpus_allowed > 1. Unlike the pushable_dl_tasks tree, dl_nr_migratory
> includes a dl_rq's current task. This means a dl_rq can have a migratable
> current, N non-migratable queued tasks, and be flagged as overloaded and have
> its CPU set in the dlo_mask, despite having an empty pushable_tasks tree.
>
> Make an dl_rq's overload logic be driven by {enqueue,dequeue}_pushable_dl_task(),
> in other words make DL RQs only be flagged as overloaded if they have at
> least one runnable-but-not-current migratable task.
>
> o push_dl_task() is unaffected, as it is a no-op if there are no pushable
> tasks.
> o pull_dl_task() now no longer scans runqueues whose sole migratable task is
> their current one, which it can't do anything about anyway.
> It may also now pull tasks to a DL RQ with dl_nr_running > 1 if only its
> current task is migratable.
>
> Since dl_rq->dl_nr_migratory becomes unused, remove it.
>
> RT had the exact same mechanism (rt_rq->rt_nr_migratory) which was dropped
> in favour of relying on rt_rq->pushable_tasks, see:
> 612f769edd06 ("sched/rt: Make rt_rq->pushable_tasks updates drive rto_mask")
>
> Link: https://lore.kernel.org/all/20230811112044.3302588-1-vschneid@redhat.com/
> Signed-off-by: Valentin Schneider <vschneid@...hat.com>
Reviewed-by: Daniel Bristot de Oliveira <bristot@...nel.org>
Thanks!
-- Daniel
Powered by blists - more mailing lists