]> git.ipfire.org Git - thirdparty/kernel/linux.git/commit
KVM: arm64: vgic: Hold config_lock while tearing down a CPU interface
authorMarc Zyngier <maz@kernel.org>
Thu, 8 Aug 2024 09:15:46 +0000 (10:15 +0100)
committerOliver Upton <oliver.upton@linux.dev>
Thu, 8 Aug 2024 16:58:22 +0000 (16:58 +0000)
commit9eb18136af9fe4dd688724070f2bfba271bd1542
treee7d8020f2ddc2e13f7ced8b8c7cd686121bf8f57
parentad518452fd263766946346324810f14bd8bb8b34
KVM: arm64: vgic: Hold config_lock while tearing down a CPU interface

Tearing down a vcpu CPU interface involves freeing the private interrupt
array. If we don't hold the lock, we may race against another thread
trying to configure it. Yeah, fuzzers do wonderful things...

Taking the lock early solves this particular problem.

Fixes: 03b3d00a70b5 ("KVM: arm64: vgic: Allocate private interrupts on demand")
Reported-by: Alexander Potapenko <glider@google.com>
Tested-by: Alexander Potapenko <glider@google.com>
Signed-off-by: Marc Zyngier <maz@kernel.org>
Link: https://lore.kernel.org/r/20240808091546.3262111-1-maz@kernel.org
Signed-off-by: Oliver Upton <oliver.upton@linux.dev>
arch/arm64/kvm/vgic/vgic-init.c