Re: [RFC PATCH 1/6] sched/dl: Improve deadline admission control for asymmetric CPU capacities
From: Quentin Perret
Date: Tue May 07 2019 - 10:32:24 EST
On Tuesday 07 May 2019 at 16:25:23 (+0200), luca abeni wrote:
> On Tue, 7 May 2019 14:48:52 +0100
> Quentin Perret <quentin.perret@xxxxxxx> wrote:
>
> > Hi Luca,
> >
> > On Monday 06 May 2019 at 06:48:31 (+0200), Luca Abeni wrote:
> > > diff --git a/drivers/base/arch_topology.c
> > > b/drivers/base/arch_topology.c index edfcf8d982e4..646d6d349d53
> > > 100644 --- a/drivers/base/arch_topology.c
> > > +++ b/drivers/base/arch_topology.c
> > > @@ -36,6 +36,7 @@ DEFINE_PER_CPU(unsigned long, cpu_scale) =
> > > SCHED_CAPACITY_SCALE;
> > > void topology_set_cpu_scale(unsigned int cpu, unsigned long
> > > capacity) {
> > > + topology_update_cpu_capacity(cpu, per_cpu(cpu_scale, cpu),
> > > capacity);
> >
> > Why is that one needed ? Don't you end up re-building the sched
> > domains after this anyways ?
>
> If I remember correctly, this function was called at boot time when the
> capacities are assigned to the CPU cores.
>
> I do not remember if the sched domain was re-built after this call, but
> I admit I do not know this part of the kernel very well...
Right and things moved recently in this area, see bb1fbdd3c3fd
("sched/topology, drivers/base/arch_topology: Rebuild the sched_domain
hierarchy when capacities change")
> This achieved the effect of correctly setting up the "rd_capacity"
> field, but I do not know if there is a better/simpler way to achieve
> the same result :)
OK, that's really an implementation detail, so no need to worry too
much about it at the RFC stage I suppose :-)
Thanks,
Quentin