diff options
author | Paolo Bonzini <pbonzini@redhat.com> | 2023-12-22 18:03:54 -0500 |
---|---|---|
committer | Paolo Bonzini <pbonzini@redhat.com> | 2023-12-22 18:03:54 -0500 |
commit | 5c2b2176ead1911d652b8848169bb44bdde75ca8 (patch) | |
tree | 94d3fcd88aa52b09f90bc5fc534f0cefdfd09e1c /arch/arm64/kvm/vgic/vgic-mmio-v3.c | |
parent | a26b7cd2254695f8258cc370f33280db0a9a3813 (diff) | |
parent | 0c12e6c8267f831e491ee64ac6f216601cea3eee (diff) |
Merge tag 'kvmarm-fixes-6.7-2' of git://git.kernel.org/pub/scm/linux/kernel/git/kvmarm/kvmarm into kvm-master
KVM/arm64 fixes for 6.7, part #2
- Ensure a vCPU's redistributor is unregistered from the MMIO bus
if vCPU creation fails
- Fix building KVM selftests for arm64 from the top-level Makefile
Diffstat (limited to 'arch/arm64/kvm/vgic/vgic-mmio-v3.c')
-rw-r--r-- | arch/arm64/kvm/vgic/vgic-mmio-v3.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/arch/arm64/kvm/vgic/vgic-mmio-v3.c b/arch/arm64/kvm/vgic/vgic-mmio-v3.c index 89117ba2528a..a764b0ab8bf9 100644 --- a/arch/arm64/kvm/vgic/vgic-mmio-v3.c +++ b/arch/arm64/kvm/vgic/vgic-mmio-v3.c @@ -820,7 +820,7 @@ out_unlock: return ret; } -static void vgic_unregister_redist_iodev(struct kvm_vcpu *vcpu) +void vgic_unregister_redist_iodev(struct kvm_vcpu *vcpu) { struct vgic_io_device *rd_dev = &vcpu->arch.vgic_cpu.rd_iodev; @@ -833,6 +833,8 @@ static int vgic_register_all_redist_iodevs(struct kvm *kvm) unsigned long c; int ret = 0; + lockdep_assert_held(&kvm->slots_lock); + kvm_for_each_vcpu(c, vcpu, kvm) { ret = vgic_register_redist_iodev(vcpu); if (ret) |