From: Jack Wang <jinpu.wang(a)profitbricks.com>
Hi Greg,
I notice there are some stable bugfix missing on stable-4.4, so I did
backport from 4.9, most of them are simple cherry-pick, some need to
adjust context a bit, I did some regression tests/ltp/kvm-unit-tests,
looks fine, there are still some patches to port, not sure if worth the
effort.
Note: patches base on 4.4.117
Thanks,
Jack Wang
Andi Kleen (1):
module/retpoline: Warn about missing retpoline in module
Borislav Petkov (2):
x86/nospec: Fix header guards names
x86/bugs: Drop one "mitigation" from dmesg
Colin Ian King (1):
x86/spectre: Fix spelling mistake: "vunerable"-> "vulnerable"
Dan Williams (9):
array_index_nospec: Sanitize speculative array de-references
x86: Implement array_index_mask_nospec
x86: Introduce barrier_nospec
x86/get_user: Use pointer masking to limit speculation
x86/syscall: Sanitize syscall table de-references under speculation
vfs, fdtable: Prevent bounds-check bypass via speculative execution
nl80211: Sanitize array index in parse_txq_params
x86/spectre: Report get_user mitigation for spectre_v1
x86/kvm: Update spectre-v1 mitigation
Darren Kenny (1):
x86/speculation: Fix typo IBRS_ATT, which should be IBRS_ALL
David Hildenbrand (2):
KVM: nVMX: kmap() can't fail
KVM: nVMX: vmx_complete_nested_posted_interrupt() can't fail
David Woodhouse (1):
x86/retpoline: Avoid retpolines for built-in __init functions
Dou Liyang (1):
x86/spectre: Check CONFIG_RETPOLINE in command line parser
Jan Dakinevich (2):
KVM: VMX: clean up declaration of VPID/EPT invalidation types
KVM: nVMX: invvpid handling improvements
Jim Mattson (1):
kvm: nVMX: Fix kernel panics induced by illegal INVEPT/INVVPID types
Josh Poimboeuf (1):
x86/paravirt: Remove 'noreplace-paravirt' cmdline option
KarimAllah Ahmed (1):
x86/spectre: Simplify spectre_v2 command line parsing
Mark Rutland (1):
Documentation: Document array_index_nospec
Peter Zijlstra (2):
KVM: x86: Make indirect calls in emulator speculation safe
KVM: VMX: Make indirect call speculation safe
Thomas Gleixner (1):
x86/cpu/bugs: Make retpoline module warning conditional
Waiman Long (1):
x86/retpoline: Remove the esp/rsp thunk
Wanpeng Li (1):
KVM: async_pf: Fix #DF due to inject "Page not Present" and "Page
Ready" exceptions simultaneously
Documentation/kernel-parameters.txt | 2 -
Documentation/speculation.txt | 90 +++++++++++++++++++++++++
arch/x86/entry/common.c | 2 +
arch/x86/include/asm/asm-prototypes.h | 1 -
arch/x86/include/asm/barrier.h | 28 ++++++++
arch/x86/include/asm/msr.h | 3 +-
arch/x86/include/asm/nospec-branch.h | 8 +--
arch/x86/include/asm/vmx.h | 5 +-
arch/x86/kernel/alternative.c | 14 ----
arch/x86/kernel/cpu/bugs.c | 122 ++++++++++++++++++++++++----------
arch/x86/kvm/emulate.c | 9 +--
arch/x86/kvm/vmx.c | 83 +++++++++++------------
arch/x86/kvm/x86.c | 34 +++++++---
arch/x86/lib/getuser.S | 10 +++
arch/x86/lib/retpoline.S | 1 -
include/linux/fdtable.h | 5 +-
include/linux/init.h | 9 ++-
include/linux/module.h | 9 +++
include/linux/nospec.h | 72 ++++++++++++++++++++
kernel/module.c | 11 +++
net/wireless/nl80211.c | 9 ++-
scripts/mod/modpost.c | 9 +++
22 files changed, 417 insertions(+), 119 deletions(-)
create mode 100644 Documentation/speculation.txt
create mode 100644 include/linux/nospec.h
--
2.7.4