[PATCH v3 0/4] Fixes for KVM HV around synchronization and initializations

From: Gautam Menghani

Date: Mon Oct 12 2026 - 04:29:51 EST


This series contains the fixes for synchronization and initializations
bugs in the KVM HV code.

Patch 1: Fix for concurrent calls to idr_alloc

Patch 2: Initialize the arch.irq_type correctly for cleanup to work

Patch 3: In the cleanup function, add a check to avoid NULL ptr
dereference.

Patch 4: Add a srcu lock to fix "suspicious usage of
rcu_dereference_check" usage.

v2 -> v3:
1. Patch 1: Correct the patch description to reflect the code changes.
2. Patch 3: Add stable and fixes tags
3. Patch 4: Use srcu_read_{unlock,lock} instead of their kvm_vcpu*
variants.

v1 -> v2:
1. Patch 2 : Avoid NULL pointer dereference when calling
kvmppc_xive_cleanup_vcpu(). Split this in a separate patch


Gautam Menghani (4):
KVM: PPC: Book3S HV: Ensure that calls to idr_alloc are synchronized
KVM: PPC: Book3S HV: XICS: Update irq_type for cleanup to work
KVM: PPC: Book3S HV: XICS: Avoid masking VP IPI on init failure
KVM: PPC: Book3s HV: Take SRCU read lock around kvmppc_h_page_init()
call

arch/powerpc/kvm/book3s_hv.c | 2 ++
arch/powerpc/kvm/book3s_hv_nested.c | 34 +++++++++--------------------
arch/powerpc/kvm/book3s_xive.c | 5 +++--
3 files changed, 15 insertions(+), 26 deletions(-)

--
2.54.0