On 06/20/2018 02:17 AM, Juergen Gross wrote: > On 20/06/18 05:31, Boris Ostrovsky wrote: >> >> On 06/19/2018 05:30 PM, Brian Woods wrote: >>> I'm currently seeing an issue where when booting from a recent Linux >>> kernel without nospec_store_bypass_disable. There's a NULL pointer >>> having to do with a lock. I put some printks in and it seems that in >>> arch/x86/kernel/process.c >>> that speculative_store_bypass_ht_init isn't getting called which >>> initializes the spin lock. >> >> >> speculative_store_bypass_ht_init() is not called on PV. For BSP it is >> called from native_smp_prepare_cpus() and for APs it is called from >> start_secondary(), neither of which is in PV code path. >> >> I think the most logical place to put it is in cpu_init(). > I don't think so. speculative_store_bypass_ht_init() requires > topology_sibling_cpumask to be setup which happens only after the call > of cpu_init().
Right. > > We should add the call to cpu_bringup() in smp_pv.c That still leaves cpu0 uninitialized. xen_pv_smp_prepare_cpus() may need this call as well if we are to follow barmetal example. I also wonder whether this works at all for !SMP. -boris _______________________________________________ Xen-devel mailing list Xen-devel@lists.xenproject.org https://lists.xenproject.org/mailman/listinfo/xen-devel