From cb55017d9c466d01b1a30a038a3e90c19a85295c Mon Sep 17 00:00:00 2001 From: Ben Hutchings Date: Wed, 23 May 2018 00:45:33 +0200 Subject: [PATCH] [x86] KVM: VMX: Expose SSBD properly to guests. --- debian/changelog | 1 + ...m-vmx-expose-ssbd-properly-to-guests.patch | 35 +++++++++++++++++++ debian/patches/series | 1 + 3 files changed, 37 insertions(+) create mode 100644 debian/patches/bugfix/x86/kvm-vmx-expose-ssbd-properly-to-guests.patch diff --git a/debian/changelog b/debian/changelog index 3ae0ce1e4..43e8c4da1 100644 --- a/debian/changelog +++ b/debian/changelog @@ -493,6 +493,7 @@ linux (4.16.11-1) UNRELEASED; urgency=medium * kbuild: use -fmacro-prefix-map to make __FILE__ a relative path * Bump ABI to 2 * [rt] Update to 4.16.8-rt3 + * [x86] KVM: VMX: Expose SSBD properly to guests. [ Salvatore Bonaccorso ] * [rt] Update to 4.16.7-rt1 and reenable diff --git a/debian/patches/bugfix/x86/kvm-vmx-expose-ssbd-properly-to-guests.patch b/debian/patches/bugfix/x86/kvm-vmx-expose-ssbd-properly-to-guests.patch new file mode 100644 index 000000000..c68abbc36 --- /dev/null +++ b/debian/patches/bugfix/x86/kvm-vmx-expose-ssbd-properly-to-guests.patch @@ -0,0 +1,35 @@ +From: Konrad Rzeszutek Wilk +Date: Mon, 21 May 2018 17:54:49 -0400 +Subject: KVM: VMX: Expose SSBD properly to guests. +Origin: https://www.spinics.net/lists/kvm/msg169259.html + +The X86_FEATURE_SSBD is an synthetic CPU feature - that is +it bit location has no relevance to the real CPUID 0x7.EBX[31] +bit position. For that we need the new CPU feature name. + +Fixes: 52817587e706 ("x86/cpufeatures: Disentangle SSBD enumeration") + +CC: Paolo Bonzini +Cc: "Radim Krčmář" +Cc: Thomas Gleixner +Cc: Ingo Molnar +Cc: "H. Peter Anvin" +Cc: stable@vger.kernel.org +Signed-off-by: Konrad Rzeszutek Wilk +--- + arch/x86/kvm/cpuid.c | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +--- a/arch/x86/kvm/cpuid.c ++++ b/arch/x86/kvm/cpuid.c +@@ -402,8 +402,8 @@ static inline int __do_cpuid_ent(struct + + /* cpuid 7.0.edx*/ + const u32 kvm_cpuid_7_0_edx_x86_features = +- F(AVX512_4VNNIW) | F(AVX512_4FMAPS) | F(SPEC_CTRL) | F(SSBD) | +- F(ARCH_CAPABILITIES); ++ F(AVX512_4VNNIW) | F(AVX512_4FMAPS) | F(SPEC_CTRL) | ++ F(SPEC_CTRL_SSBD) | F(ARCH_CAPABILITIES); + + /* all calls to cpuid_count() should be made on the same cpu */ + get_cpu(); diff --git a/debian/patches/series b/debian/patches/series index 4c47e7b68..cb1d40074 100644 --- a/debian/patches/series +++ b/debian/patches/series @@ -142,6 +142,7 @@ features/all/lockdown/arm64-add-kernel-config-option-to-lock-down-when.patch debian/i386-686-pae-pci-set-pci-nobios-by-default.patch bugfix/all/xfs-enhance-dinode-verifier.patch bugfix/all/xfs-set-format-back-to-extents-if-xfs_bmap_extents_t.patch +bugfix/x86/kvm-vmx-expose-ssbd-properly-to-guests.patch # Fix exported symbol versions bugfix/all/module-disable-matching-missing-version-crc.patch