Messages in this thread | | | Date | Thu, 21 Jan 2021 07:28:19 +0100 | From | Juri Lelli <> | Subject | Re: [PATCH] sched/deadline: Reduce rq lock contention in dl_add_task_root_domain() |
| |
Hi,
On 19/01/21 09:35, 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@google.com> > Signed-off-by: Dietmar Eggemann <dietmar.eggemann@arm.com>
Looks good to me, thanks!
Acked-by: Juri Lelli <juri.lelli@redhat.com>
Best, Juri
| |