summaryrefslogtreecommitdiffstats
path: root/arch/x86/include/asm
diff options
context:
space:
mode:
authorVitaly Kuznetsov <vkuznets@redhat.com>2019-08-13 15:53:31 +0200
committerPaolo Bonzini <pbonzini@redhat.com>2019-08-22 10:09:19 +0200
commit97413d2981bb3619a9d39f0b611318664d7231f5 (patch)
tree59386ea81b7e964cb9ecdab2e3dc189bbaaf606d /arch/x86/include/asm
parentf8ea7c6049d5d0766b84c8107583ed0094773d06 (diff)
downloadlinux-stable-97413d2981bb3619a9d39f0b611318664d7231f5.tar.gz
linux-stable-97413d2981bb3619a9d39f0b611318664d7231f5.tar.bz2
linux-stable-97413d2981bb3619a9d39f0b611318664d7231f5.zip
x86: KVM: clear interrupt shadow on EMULTYPE_SKIP
When doing x86_emulate_instruction(EMULTYPE_SKIP) interrupt shadow has to be cleared if and only if the skipping is successful. There are two immediate issues: - In SVM skip_emulated_instruction() we are not zapping interrupt shadow in case kvm_emulate_instruction(EMULTYPE_SKIP) is used to advance RIP (!nrpip_save). - In VMX handle_ept_misconfig() when running as a nested hypervisor we (static_cpu_has(X86_FEATURE_HYPERVISOR) case) forget to clear interrupt shadow. Note that we intentionally don't handle the case when the skipped instruction is supposed to prolong the interrupt shadow ("MOV/POP SS") as skip-emulation of those instructions should not happen under normal circumstances. Suggested-by: Sean Christopherson <sean.j.christopherson@intel.com> Reviewed-by: Sean Christopherson <sean.j.christopherson@intel.com> Signed-off-by: Vitaly Kuznetsov <vkuznets@redhat.com> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Diffstat (limited to 'arch/x86/include/asm')
0 files changed, 0 insertions, 0 deletions