On Thu, Nov 29, 2018 at 09:50:13AM -0500, Konrad Rzeszutek Wilk wrote:
> On Thu, Nov 29, 2018 at 09:42:56AM -0500, Konrad Rzeszutek Wilk wrote:
> > On Sun, Nov 25, 2018 at 07:33:36PM +0100, Thomas Gleixner wrote:
> > > Currently the 'sched_smt_present' static key is enabled when at CPU 
> > > bringup
> > > SMT topology is observed, but it is never disabled. However there is 
> > > demand
> > > to also disable the key when the topology changes such that there is no 
> > > SMT
> > > present anymore.
> > > 
> > > Implement this by making the key count the number of cores that have SMT
> > > enabled.
> > > 
> > > In particular, the SMT topology bits are set before interrrupts are 
> > > enabled
> > > and similarly, are cleared after interrupts are disabled for the last time
> > > and the CPU dies.
> > 
> > I see that the number you used is '2', but I thought that there are some
> > CPUs out there (Knights Landing?) that could have four threads?

This code is generic, Sparc, Power and I think MIPS all have parts with
SMT8.

> > Would it be better to have a generic function that would provide the
> > amount of threads the platform does expose - and use that instead
> > of a constant value? 
> 
> Nevermind - this would work even with 4 threads as we would hit the
> number '2' before '4' and the key would be turned on/off properly.

Indeed so, 2 is the point where we either have more than 1 sibling, or
will go back to 1.

Reply via email to