diff options
author | Nicolai Stange <nstange@suse.de> | 2018-07-22 13:38:18 +0200 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2018-08-15 17:37:32 +0200 |
commit | b16ff629f3403fd3b50fa5c626064b9dff70cacb (patch) | |
tree | 971879e97e7f133f688c01c8be4751f1a109fa50 | |
parent | 3131918d536055f456bc453fa96a083080112bc5 (diff) | |
download | linux-b16ff629f3403fd3b50fa5c626064b9dff70cacb.tar.gz |
x86/KVM/VMX: Don't set l1tf_flush_l1d from vmx_handle_external_intr()
commit 18b57ce2eb8c8b9a24174a89250cf5f57c76ecdc upstream.
For VMEXITs caused by external interrupts, vmx_handle_external_intr()
indirectly calls into the interrupt handlers through the host's IDT.
It follows that these interrupts get accounted for in the
kvm_cpu_l1tf_flush_l1d per-cpu flag.
The subsequently executed vmx_l1d_flush() will thus be aware that some
interrupts have happened and conduct a L1d flush anyway.
Setting l1tf_flush_l1d from vmx_handle_external_intr() isn't needed
anymore. Drop it.
Signed-off-by: Nicolai Stange <nstange@suse.de>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-rw-r--r-- | arch/x86/kvm/vmx.c | 1 |
1 files changed, 0 insertions, 1 deletions
diff --git a/arch/x86/kvm/vmx.c b/arch/x86/kvm/vmx.c index 704cd433d462bc..d0112227cb35fd 100644 --- a/arch/x86/kvm/vmx.c +++ b/arch/x86/kvm/vmx.c @@ -10019,7 +10019,6 @@ static void vmx_handle_external_intr(struct kvm_vcpu *vcpu) [ss]"i"(__KERNEL_DS), [cs]"i"(__KERNEL_CS) ); - vcpu->arch.l1tf_flush_l1d = true; } } STACK_FRAME_NON_STANDARD(vmx_handle_external_intr); |