On Tue, 7 May 2019 14:48:52 +0100
Quentin Perret <[email protected]> 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...

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 :)



                        Thanks,
                                Luca



> 
> >     per_cpu(cpu_scale, cpu) = capacity;
> >  }  
> 
> Thanks,
> Quentin

Reply via email to