aboutsummaryrefslogtreecommitdiffstats
path: root/common/recipes-kernel/linux/linux-yocto-4.9.21/0032-KVM-x86-Remove-indirect-MSR-op-calls-from-SPEC_CTRL.patch
diff options
context:
space:
mode:
Diffstat (limited to 'common/recipes-kernel/linux/linux-yocto-4.9.21/0032-KVM-x86-Remove-indirect-MSR-op-calls-from-SPEC_CTRL.patch')
-rw-r--r--common/recipes-kernel/linux/linux-yocto-4.9.21/0032-KVM-x86-Remove-indirect-MSR-op-calls-from-SPEC_CTRL.patch105
1 files changed, 0 insertions, 105 deletions
diff --git a/common/recipes-kernel/linux/linux-yocto-4.9.21/0032-KVM-x86-Remove-indirect-MSR-op-calls-from-SPEC_CTRL.patch b/common/recipes-kernel/linux/linux-yocto-4.9.21/0032-KVM-x86-Remove-indirect-MSR-op-calls-from-SPEC_CTRL.patch
deleted file mode 100644
index 4f0b4222..00000000
--- a/common/recipes-kernel/linux/linux-yocto-4.9.21/0032-KVM-x86-Remove-indirect-MSR-op-calls-from-SPEC_CTRL.patch
+++ /dev/null
@@ -1,105 +0,0 @@
-From 0ebeae5f6b25b48c0559950e2b7c2f0a1ffd641c Mon Sep 17 00:00:00 2001
-From: Paolo Bonzini <pbonzini@redhat.com>
-Date: Thu, 22 Feb 2018 16:43:17 +0100
-Subject: [PATCH 32/33] KVM/x86: Remove indirect MSR op calls from SPEC_CTRL
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-commit ecb586bd29c99fb4de599dec388658e74388daad upstream.
-
-Having a paravirt indirect call in the IBRS restore path is not a
-good idea, since we are trying to protect from speculative execution
-of bogus indirect branch targets. It is also slower, so use
-native_wrmsrl() on the vmentry path too.
-
-Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
-Reviewed-by: Jim Mattson <jmattson@google.com>
-Cc: David Woodhouse <dwmw@amazon.co.uk>
-Cc: KarimAllah Ahmed <karahmed@amazon.de>
-Cc: Linus Torvalds <torvalds@linux-foundation.org>
-Cc: Peter Zijlstra <peterz@infradead.org>
-Cc: Radim Krčmář <rkrcmar@redhat.com>
-Cc: Thomas Gleixner <tglx@linutronix.de>
-Cc: kvm@vger.kernel.org
-Cc: stable@vger.kernel.org
-Fixes: d28b387fb74da95d69d2615732f50cceb38e9a4d
-Link: http://lkml.kernel.org/r/20180222154318.20361-2-pbonzini@redhat.com
-Signed-off-by: Ingo Molnar <mingo@kernel.org>
-Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
----
- arch/x86/kvm/svm.c | 7 ++++---
- arch/x86/kvm/vmx.c | 7 ++++---
- 2 files changed, 8 insertions(+), 6 deletions(-)
-
-diff --git a/arch/x86/kvm/svm.c b/arch/x86/kvm/svm.c
-index 4a36977..8d33396 100644
---- a/arch/x86/kvm/svm.c
-+++ b/arch/x86/kvm/svm.c
-@@ -44,6 +44,7 @@
- #include <asm/debugreg.h>
- #include <asm/kvm_para.h>
- #include <asm/irq_remapping.h>
-+#include <asm/microcode.h>
- #include <asm/nospec-branch.h>
-
- #include <asm/virtext.h>
-@@ -4907,7 +4908,7 @@ static void svm_vcpu_run(struct kvm_vcpu *vcpu)
- * being speculatively taken.
- */
- if (svm->spec_ctrl)
-- wrmsrl(MSR_IA32_SPEC_CTRL, svm->spec_ctrl);
-+ native_wrmsrl(MSR_IA32_SPEC_CTRL, svm->spec_ctrl);
-
- asm volatile (
- "push %%" _ASM_BP "; \n\t"
-@@ -5017,10 +5018,10 @@ static void svm_vcpu_run(struct kvm_vcpu *vcpu)
- * save it.
- */
- if (!msr_write_intercepted(vcpu, MSR_IA32_SPEC_CTRL))
-- rdmsrl(MSR_IA32_SPEC_CTRL, svm->spec_ctrl);
-+ svm->spec_ctrl = native_read_msr(MSR_IA32_SPEC_CTRL);
-
- if (svm->spec_ctrl)
-- wrmsrl(MSR_IA32_SPEC_CTRL, 0);
-+ native_wrmsrl(MSR_IA32_SPEC_CTRL, 0);
-
- /* Eliminate branch target predictions from guest mode */
- vmexit_fill_RSB();
-diff --git a/arch/x86/kvm/vmx.c b/arch/x86/kvm/vmx.c
-index f6c0568..aa2684a 100644
---- a/arch/x86/kvm/vmx.c
-+++ b/arch/x86/kvm/vmx.c
-@@ -49,6 +49,7 @@
- #include <asm/kexec.h>
- #include <asm/apic.h>
- #include <asm/irq_remapping.h>
-+#include <asm/microcode.h>
- #include <asm/nospec-branch.h>
-
- #include "trace.h"
-@@ -8888,7 +8889,7 @@ static void __noclone vmx_vcpu_run(struct kvm_vcpu *vcpu)
- * being speculatively taken.
- */
- if (vmx->spec_ctrl)
-- wrmsrl(MSR_IA32_SPEC_CTRL, vmx->spec_ctrl);
-+ native_wrmsrl(MSR_IA32_SPEC_CTRL, vmx->spec_ctrl);
-
- vmx->__launched = vmx->loaded_vmcs->launched;
- asm(
-@@ -9024,10 +9025,10 @@ static void __noclone vmx_vcpu_run(struct kvm_vcpu *vcpu)
- * save it.
- */
- if (!msr_write_intercepted(vcpu, MSR_IA32_SPEC_CTRL))
-- rdmsrl(MSR_IA32_SPEC_CTRL, vmx->spec_ctrl);
-+ vmx->spec_ctrl = native_read_msr(MSR_IA32_SPEC_CTRL);
-
- if (vmx->spec_ctrl)
-- wrmsrl(MSR_IA32_SPEC_CTRL, 0);
-+ native_wrmsrl(MSR_IA32_SPEC_CTRL, 0);
-
- /* Eliminate branch target predictions from guest mode */
- vmexit_fill_RSB();
---
-2.7.4
-