KVM x86 fix for 6.17-rcN

Sync the vTPR from the local APIC to the VMCB even when AVIC is active, to fix
 a bug where host updates to the vTPR, e.g. via KVM_SET_LAPIC or emulation of a
 guest access, effectively get lost and result in interrupt delivery issues in
 the guest.
 -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEKTobbabEP7vbhhN9OlYIJqCjN/0FAmjIsKoACgkQOlYIJqCj
 N/0gdw/+LmGkjSvqcEaMgvtMSMgX7xVizE+nTaGDhN2oJQh+3o67QKglb6e5JgGs
 yCMNuPhWf3GNa0e0Dgw2ckjPN/5YJ4StQSZS3Q1KRLpcb+CjMuBu6qBqyhXPQfGG
 k5xNPQVeajIz+d/A7+ggyO6NPA3r0cmt2B5bnIksDBvramOt5BjCxxfMhuPkGIJm
 I++lTIEE11TFnLInYDj4QMhn2wryoSG0nAH98HvyggDae70TzDAauMkyDYcC9AAP
 P4Q0b7yuf9djdJZyABbgQd0d669f6KAxWKZUnYYCwaUqNzSVaI7msx6nbpTMbhyk
 bT8dZ6xQqG4NdOJQBuH/s6rgOtq/pT/4EMEHV/1/y1t/R7xyIvR7uDdBJyX3ZJnc
 wWHYmJiz1oqpOXSCqqqP/GMBZ4yVr0IYjMEI42vgPaMPnYO6/s1aPl46KofUJx27
 lO1V82tSw12CiiXSue0zVyRNkGqsnlQww2gDyU51SexvOzDzaNMfH+eXuh6BnTln
 60Sey5r7bKMfcCb3lc9PdUGQUSEil3w6w/C42KDIYYvszmTKV75Rav0Bj2UHvV6T
 D9CDYtjT7PFtKG6O05NXID8SiwLgGXG+2huveYh8ex5PZ7VA4queXOfqGnPsuJx8
 jiFSGzQY9rvLsG8vdYRVQZsHdmfTHp+mnxMBNhfo2CodiB6aCdU=
 =Gzqy
 -----END PGP SIGNATURE-----

Merge tag 'kvm-x86-fixes-6.17-rcN' of https://github.com/kvm-x86/linux into HEAD

KVM x86 fix for 6.17-rcN

Sync the vTPR from the local APIC to the VMCB even when AVIC is active, to fix
a bug where host updates to the vTPR, e.g. via KVM_SET_LAPIC or emulation of a
guest access, effectively get lost and result in interrupt delivery issues in
the guest.
This commit is contained in:
Paolo Bonzini 2025-09-17 19:45:02 +02:00
commit f6f43a5338

View file

@ -4046,8 +4046,7 @@ static inline void sync_lapic_to_cr8(struct kvm_vcpu *vcpu)
struct vcpu_svm *svm = to_svm(vcpu);
u64 cr8;
if (nested_svm_virtualize_tpr(vcpu) ||
kvm_vcpu_apicv_active(vcpu))
if (nested_svm_virtualize_tpr(vcpu))
return;
cr8 = kvm_get_cr8(vcpu);