]> git.baikalelectronics.ru Git - kernel.git/commit
Revert "svm: Fix AVIC incomplete IPI emulation"
authorSuthikulpanit, Suravee <Suravee.Suthikulpanit@amd.com>
Wed, 20 Mar 2019 08:12:28 +0000 (08:12 +0000)
committerPaolo Bonzini <pbonzini@redhat.com>
Tue, 16 Apr 2019 13:37:31 +0000 (15:37 +0200)
commitf7a14e06583456e470a4529c5ce849adb5051dbc
tree10df4ab0741861975425ea4a86f069255c915294
parent851f5c99bea62a97a627ddb922b3ce773f0525d1
Revert "svm: Fix AVIC incomplete IPI emulation"

This reverts commit c6f94dfcd9910e97e1bc79bd6bc48c715981795c.

As Oren Twaig pointed out the old discussion:

  https://patchwork.kernel.org/patch/8292231/

that the change coud potentially cause an extra IPI to be sent to
the destination vcpu because the AVIC hardware already set the IRR bit
before the incomplete IPI #VMEXIT with id=1 (target vcpu is not running).
Since writting to ICR and ICR2 will also set the IRR. If something triggers
the destination vcpu to get scheduled before the emulation finishes, then
this could result in an additional IPI.

Also, the issue mentioned in the commit c6f94dfcd991 was misdiagnosed.

Cc: Radim Krčmář <rkrcmar@redhat.com>
Cc: Paolo Bonzini <pbonzini@redhat.com>
Reported-by: Oren Twaig <oren@scalemp.com>
Signed-off-by: Suravee Suthikulpanit <suravee.suthikulpanit@amd.com>
Cc: stable@vger.kernel.org
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
arch/x86/kvm/svm.c