[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [PATCH] x86/xen: fix warning when running with nosmt mitigations
On Thu, Nov 05, 2020 at 07:35:29PM -0500, Brian Masney wrote: > diff --git a/arch/x86/xen/spinlock.c b/arch/x86/xen/spinlock.c > index 799f4eba0a62..4a052459a08e 100644 > --- a/arch/x86/xen/spinlock.c > +++ b/arch/x86/xen/spinlock.c > @@ -93,9 +93,24 @@ void xen_init_lock_cpu(int cpu) > > void xen_uninit_lock_cpu(int cpu) > { > + int irq; > + > if (!xen_pvspin) > return; > > + /* > + * When booting the kernel with 'mitigations=auto,nosmt', the secondary > + * CPUs are not activated and only the primary thread on each CPU core > + * is used. In this situation, xen_hvm_smp_prepare_cpus(), and more > + * importantly xen_init_lock_cpu(), is not called, so the > + * lock_kicker_irq is not initialized for the secondary CPUs. Let's > + * exit early if the irq is not set to avoid a warning in the console > + * log. > + */ > + irq = per_cpu(lock_kicker_irq, cpu); > + if (irq == -1) > + return; > + > unbind_from_irqhandler(per_cpu(lock_kicker_irq, cpu), NULL); As soon as I saw this on lore, I saw that I should have passed the irq variable to unbind_from_irqhandler() rather than doing another per_cpu() lookup. I'll wait for feedback about the general approach before posting a v2. Brian
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |