[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <eae452b8-ea5c-8787-8292-e3d7d5f7a1f4@redhat.com>
Date: Wed, 20 Jan 2021 08:52:25 +0100
From: Daniel Bristot de Oliveira <bristot@...hat.com>
To: Dietmar Eggemann <dietmar.eggemann@....com>,
Ingo Molnar <mingo@...hat.com>,
Peter Zijlstra <peterz@...radead.org>,
Juri Lelli <juri.lelli@...hat.com>
Cc: linux-kernel@...r.kernel.org,
Vincent Guittot <vincent.guittot@...aro.org>,
Steven Rostedt <rostedt@...dmis.org>,
Quentin Perret <qperret@...gle.com>,
Valentin Schneider <valentin.schneider@....com>
Subject: Re: [PATCH] sched/deadline: Reduce rq lock contention in
dl_add_task_root_domain()
On 1/19/21 9:35 AM, Dietmar Eggemann wrote:
> dl_add_task_root_domain() is called during sched domain rebuild:
>
> rebuild_sched_domains_locked()
> partition_and_rebuild_sched_domains()
> rebuild_root_domains()
> for all top_cpuset descendants:
> update_tasks_root_domain()
> for all tasks of cpuset:
> dl_add_task_root_domain()
>
> Change it so that only the task pi lock is taken to check if the task
> has a SCHED_DEADLINE (DL) policy. In case that p is a DL task take the
> rq lock as well to be able to safely de-reference root domain's DL
> bandwidth structure.
>
> Most of the tasks will have another policy (namely SCHED_NORMAL) and
> can now bail without taking the rq lock.
>
> One thing to note here: Even in case that there aren't any DL user
> tasks, a slow frequency switching system with cpufreq gov schedutil has
> a DL task (sugov) per frequency domain running which participates in DL
> bandwidth management.
>
> Reviewed-by: Quentin Perret <qperret@...gle.com>
> Signed-off-by: Dietmar Eggemann <dietmar.eggemann@....com>
Reviewed-by: Daniel Bristot de Oliveira <bristot@...hat.com>
Thanks!
-- Daniel
Powered by blists - more mailing lists