Commit 7bd7ff9
KVM: SVM: Handle event vectoring error in check_emulate_instruction()
Detect unhandleable vectoring in check_emulate_instruction() to prevent
infinite retry loops on SVM, and to eliminate the main differences in how
VM-Exits during event vectoring are handled on SVM versus VMX. E.g. if
the vCPU puts its IDT in emulated MMIO memory and generates an event,
without the check_emulate_instruction() change, SVM will re-inject the
event and resume the guest, and effectively put the vCPU into an infinite
loop.
Signed-off-by: Ivan Orlov <iorlov@amazon.com>
Link: https://lore.kernel.org/r/20241217181458.68690-6-iorlov@amazon.com
[sean: grab "svm" locally, massage changelog]
Signed-off-by: Sean Christopherson <seanjc@google.com>1 parent 47ef3ef commit 7bd7ff9
1 file changed
Lines changed: 7 additions & 1 deletion
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
4789 | 4789 | | |
4790 | 4790 | | |
4791 | 4791 | | |
| 4792 | + | |
4792 | 4793 | | |
4793 | 4794 | | |
4794 | 4795 | | |
| 4796 | + | |
| 4797 | + | |
| 4798 | + | |
| 4799 | + | |
| 4800 | + | |
4795 | 4801 | | |
4796 | 4802 | | |
4797 | 4803 | | |
| |||
4888 | 4894 | | |
4889 | 4895 | | |
4890 | 4896 | | |
4891 | | - | |
| 4897 | + | |
4892 | 4898 | | |
4893 | 4899 | | |
4894 | 4900 | | |
| |||
0 commit comments