KVM CPU hotplug notifier triggers BUG_ON on arm64

Marc Zyngier maz at kernel.org
Mon Jul 3 09:38:14 PDT 2023


On Mon, 03 Jul 2023 17:02:30 +0100,
Oliver Upton <oliver.upton at linux.dev> wrote:
> 
> Hey Marc,
> 
> On Mon, Jul 03, 2023 at 10:45:26AM +0100, Marc Zyngier wrote:
> > On Sat, 01 Jul 2023 18:42:28 +0100, Oliver Upton <oliver.upton at linux.dev> wrote:
> > > Well, one way to hack around the problem would be to just cram
> > > preempt_{disable,enable}() into kvm_arch_hardware_disable(), but that's
> > > kinda gross in the context of cpuhp which isn't migratable in the first
> > > place. Let me have a look...
> 
> Heh, I should've mentioned I'm on holiday until Thursday.

No problem, happy to keep an eye on stuff in the meantime.

> 
> > An alternative would be to replace the preemptible() checks with a one
> > that looks at the migration state, but I'm not sure that's much better
> > (it certainly looks more costly).
> > 
> > There is also the fact that most of our per-CPU accessors are already
> > using preemption disabling, and this code has a bunch of them. So I'm
> > not sure there is a lot to be gained from not disabling preemption
> > upfront.
> > 
> > Anyway, as I was able to reproduce the issue under NV, I tested the
> > hack below. If anything, I expect it to be a reasonable fix for
> > 6.3/6.4, and until we come up with a better approach.
> 
> Yeah, I'm fine with a hack like this. Do you want to send this out as a
> patch?

Now sent as 20230703163548.1498943-1-maz at kernel.org.

Enjoy your time off!

	M.

-- 
Without deviation from the norm, progress is not possible.



More information about the linux-arm-kernel mailing list