[PATCH 0/2] KVM: SVM: Set pCPU during IRTE update if vCPU is running

From: Sean Christopherson
Date: Tue Aug 08 2023 - 19:31:37 EST


Fix a bug where KVM doesn't set the pCPU affinity for running vCPUs when
updating IRTE routing. Not setting the pCPU means the IOMMU will signal
the wrong pCPU's doorbell until the vCPU goes through a put+load cycle.

I waffled for far too long between making this one patch or two. Moving
the lock doesn't make all that much sense as a standalone patch, but in the
end, I decided that isolating the locking change would be useful in the
unlikely event that it breaks something. If anyone feels strongly about
making this a single patch, I have no objection to squashing these together.

Sean Christopherson (2):
KVM: SVM: Take and hold ir_list_lock when updating vCPU's Physical ID
entry
KVM: SVM: Set target pCPU during IRTE update if target vCPU is running

arch/x86/kvm/svm/avic.c | 59 +++++++++++++++++++++++++++++++++++------
1 file changed, 51 insertions(+), 8 deletions(-)


base-commit: 240f736891887939571854bd6d734b6c9291f22e
--
2.41.0.640.ga95def55d0-goog