On Mon, 03 Jul 2023 17:02:30 +0100, Oliver Upton <oliver.upton@xxxxxxxxx> 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@xxxxxxxxx> 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@xxxxxxxxxx. Enjoy your time off! M. -- Without deviation from the norm, progress is not possible.