Blame SOURCES/kvm-i386-Add-new-MSR-indices-for-IA32_PRED_CMD-and-IA32_.patch

Pablo Greco e6a3ae
From a0a63864906cd578c7bc73ea5318282fb393c147 Mon Sep 17 00:00:00 2001
Pablo Greco e6a3ae
From: "plai@redhat.com" <plai@redhat.com>
Pablo Greco e6a3ae
Date: Wed, 3 Apr 2019 15:54:25 +0100
Pablo Greco e6a3ae
Subject: [PATCH 01/10] i386: Add new MSR indices for IA32_PRED_CMD and
Pablo Greco e6a3ae
 IA32_ARCH_CAPABILITIES
Pablo Greco e6a3ae
Pablo Greco e6a3ae
RH-Author: plai@redhat.com
Pablo Greco e6a3ae
Message-id: <1554306874-28796-2-git-send-email-plai@redhat.com>
Pablo Greco e6a3ae
Patchwork-id: 85379
Pablo Greco e6a3ae
O-Subject: [RHEL8.1 qemu-kvm PATCH resend 01/10] i386: Add new MSR indices for IA32_PRED_CMD and IA32_ARCH_CAPABILITIES
Pablo Greco e6a3ae
Bugzilla: 1561761
Pablo Greco e6a3ae
RH-Acked-by: Eduardo Habkost <ehabkost@redhat.com>
Pablo Greco e6a3ae
RH-Acked-by: Igor Mammedov <imammedo@redhat.com>
Pablo Greco e6a3ae
RH-Acked-by: Michael S. Tsirkin <mst@redhat.com>
Pablo Greco e6a3ae
Pablo Greco e6a3ae
From: Robert Hoo <robert.hu@linux.intel.com>
Pablo Greco e6a3ae
Pablo Greco e6a3ae
IA32_PRED_CMD MSR gives software a way to issue commands that affect the state
Pablo Greco e6a3ae
of indirect branch predictors. Enumerated by CPUID.(EAX=7H,ECX=0):EDX[26].
Pablo Greco e6a3ae
IA32_ARCH_CAPABILITIES MSR enumerates architectural features of RDCL_NO and
Pablo Greco e6a3ae
IBRS_ALL. Enumerated by CPUID.(EAX=07H, ECX=0):EDX[29].
Pablo Greco e6a3ae
Pablo Greco e6a3ae
https://software.intel.com/sites/default/files/managed/c5/63/336996-Speculative-Execution-Side-Channel-Mitigations.pdf
Pablo Greco e6a3ae
Pablo Greco e6a3ae
Signed-off-by: Robert Hoo <robert.hu@linux.intel.com>
Pablo Greco e6a3ae
Message-Id: <1530781798-183214-2-git-send-email-robert.hu@linux.intel.com>
Pablo Greco e6a3ae
Signed-off-by: Eduardo Habkost <ehabkost@redhat.com>
Pablo Greco e6a3ae
(cherry picked from commit 8c80c99fcceabd0708a5a83f08577e778c9419f5)
Pablo Greco e6a3ae
Signed-off-by: Paul Lai <plai@redhat.com>
Pablo Greco e6a3ae
Signed-off-by: Danilo C. L. de Paula <ddepaula@redhat.com>
Pablo Greco e6a3ae
---
Pablo Greco e6a3ae
 target/i386/cpu.h | 2 ++
Pablo Greco e6a3ae
 1 file changed, 2 insertions(+)
Pablo Greco e6a3ae
Pablo Greco e6a3ae
diff --git a/target/i386/cpu.h b/target/i386/cpu.h
Pablo Greco e6a3ae
index fb6caf4..1dc565c 100644
Pablo Greco e6a3ae
--- a/target/i386/cpu.h
Pablo Greco e6a3ae
+++ b/target/i386/cpu.h
Pablo Greco e6a3ae
@@ -352,6 +352,8 @@ typedef enum X86Seg {
Pablo Greco e6a3ae
 #define MSR_TSC_ADJUST                  0x0000003b
Pablo Greco e6a3ae
 #define MSR_IA32_SPEC_CTRL              0x48
Pablo Greco e6a3ae
 #define MSR_VIRT_SSBD                   0xc001011f
Pablo Greco e6a3ae
+#define MSR_IA32_PRED_CMD               0x49
Pablo Greco e6a3ae
+#define MSR_IA32_ARCH_CAPABILITIES      0x10a
Pablo Greco e6a3ae
 #define MSR_IA32_TSCDEADLINE            0x6e0
Pablo Greco e6a3ae
 
Pablo Greco e6a3ae
 #define FEATURE_CONTROL_LOCKED                    (1<<0)
Pablo Greco e6a3ae
-- 
Pablo Greco e6a3ae
1.8.3.1
Pablo Greco e6a3ae