kernel-hacking-2024-linux-s.../arch/arm64/kvm
Marc Zyngier 9eb18136af 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: 03b3d00a70 ("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>
2024-08-08 16:58:22 +00:00
..
hyp KVM: arm64: Tidying up PAuth code in KVM 2024-08-07 19:11:05 +00:00
vgic KVM: arm64: vgic: Hold config_lock while tearing down a CPU interface 2024-08-08 16:58:22 +00:00
.gitignore
arch_timer.c
arm.c KVM: arm64: Tidying up PAuth code in KVM 2024-08-07 19:11:05 +00:00
debug.c
emulate-nested.c Merge branch kvm-arm64/nv-tcr2 into kvmarm/next 2024-07-14 00:28:37 +00:00
fpsimd.c KVM: arm64: nv: Ensure correct VL is loaded before saving SVE state 2024-06-20 19:02:40 +00:00
guest.c KVM: arm64: Allow AArch32 PSTATE.M to be restored as System mode 2024-05-27 17:45:35 +01:00
handle_exit.c Merge branch kvm-arm64/nv-sve into kvmarm/next 2024-07-14 00:27:06 +00:00
hypercalls.c
inject_fault.c
Kconfig KVM: arm64: Enforce dependency on an ARMv8.4-aware toolchain 2024-08-07 19:09:35 +00:00
Makefile KVM: arm64: fix override-init warnings in W=1 builds 2024-08-02 18:58:03 +00:00
mmio.c KVM: arm64: Force injection of a data abort on NISV MMIO exit 2024-05-01 16:48:15 +01:00
mmu.c KVM: arm64: nv: Tag shadow S2 entries with guest's leaf S2 level 2024-06-19 08:14:38 +00:00
nested.c KVM: arm64: free kvm->arch.nested_mmus with kvfree() 2024-08-02 18:57:30 +00:00
pauth.c KVM: arm64: nv: Work around lack of pauth support in old toolchains 2024-04-23 19:27:11 +01:00
pkvm.c KVM: arm64: Prevent kmemleak from accessing .hyp.data 2024-05-01 16:48:14 +01:00
pmu-emul.c ARM: 2024-07-20 12:41:03 -07:00
pmu.c
psci.c
pvtime.c
reset.c KVM: arm64: nv: Support multiple nested Stage-2 mmu structures 2024-06-19 08:13:49 +00:00
stacktrace.c
sys_regs.c Merge branch kvm-arm64/nv-tcr2 into kvmarm/next 2024-07-14 00:28:37 +00:00
sys_regs.h
trace.h
trace_arm.h
trace_handle_exit.h
trng.c
va_layout.c
vgic-sys-reg-v3.c
vmid.c