Re: cpu/hotplug: broken sibling thread hotplug

From: Igor Mammedov
Date: Mon Jan 28 2019 - 05:13:09 EST


On Fri, 25 Jan 2019 11:02:03 -0600
Josh Poimboeuf <jpoimboe@xxxxxxxxxx> wrote:

> On Fri, Jan 25, 2019 at 10:36:57AM -0600, Josh Poimboeuf wrote:
> > How about this patch? It's just a revert of 73d5e2b47264 and
> > bc2d8d262cba, plus the 1-line vmx_vm_init() change. If it looks ok to
> > you, I can clean it up and submit an official version.
>
> This one actually compiles...

Looks good to me,
(one small question below)


[...]
> static inline bool cpu_smt_allowed(unsigned int cpu)
> {
> - if (topology_is_primary_thread(cpu))
> + if (cpu_smt_control == CPU_SMT_ENABLED)
> return true;
>
> - /*
> - * If the CPU is not a 'primary' thread and the booted_once bit is
> - * set then the processor has SMT support. Store this information
> - * for the late check of SMT support in cpu_smt_check_topology().
> - */
> - if (per_cpu(cpuhp_state, cpu).booted_once)
> - cpu_smt_available = true;
> -
> - if (cpu_smt_control == CPU_SMT_ENABLED)
> + if (topology_is_primary_thread(cpu))
> return true;
why did you swap cpu_smt_control and topology_is_primary_thread checks?

>
> /*