freebsd-skq/sys/x86/include
Konstantin Belousov 3621ba1ede Add Intel Spec Store Bypass Disable control.
Speculative Store Bypass (SSB) is a speculative execution side channel
vulnerability identified by Jann Horn of Google Project Zero (GPZ) and
Ken Johnson of the Microsoft Security Response Center (MSRC)
https://bugs.chromium.org/p/project-zero/issues/detail?id=1528.
Updated Intel microcode introduces a MSR bit to disable SSB as a
mitigation for the vulnerability.

Introduce a sysctl hw.spec_store_bypass_disable to provide global
control over the SSBD bit, akin to the existing sysctl that controls
IBRS. The sysctl can be set to one of three values:
0: off
1: on
2: auto

Future work will enable applications to control SSBD on a per-process
basis (when it is not enabled globally).

SSBD bit detection and control was verified with prerelease microcode.

Security:	CVE-2018-3639
Tested by:	emaste (previous version, without updated microcode)
Sponsored by:	The FreeBSD Foundation
MFC after:	3 days
2018-05-21 21:08:19 +00:00
..
xen
_align.h spdx: initial adoption of licensing ID tags. 2017-11-18 14:26:50 +00:00
_inttypes.h sys/x86: further adoption of SPDX licensing ID tags. 2017-11-27 15:11:47 +00:00
_limits.h sys: further adoption of SPDX licensing ID tags. 2017-11-20 19:43:44 +00:00
_stdint.h sys/x86: further adoption of SPDX licensing ID tags. 2017-11-27 15:11:47 +00:00
_types.h Do not include float interfaces when using libsa. 2018-02-23 04:04:25 +00:00
acpica_machdep.h sys/x86: further adoption of SPDX licensing ID tags. 2017-11-27 15:11:47 +00:00
apicreg.h sys/x86: further adoption of SPDX licensing ID tags. 2017-11-27 15:11:47 +00:00
apicvar.h Correct pseudo misspelling in sys/ comments 2018-02-23 18:15:50 +00:00
apm_bios.h
bus_dma.h Clean up MD pollution of bus_dma.h: 2017-07-01 05:35:29 +00:00
bus.h amd64: Add a 48-bit MAXADDR constant 2018-01-13 17:55:22 +00:00
busdma_impl.h Add support for NUMA domains to bus dma tags. This causes all memory 2018-01-12 23:34:16 +00:00
cputypes.h Remove 'cpu' and 'cpu_class' on amd64. 2016-09-15 17:05:54 +00:00
dump.h
elf.h sys/x86: further adoption of SPDX licensing ID tags. 2017-11-27 15:11:47 +00:00
endian.h sys: further adoption of SPDX licensing ID tags. 2017-11-20 19:43:44 +00:00
fdt.h sys/x86: further adoption of SPDX licensing ID tags. 2017-11-27 15:11:47 +00:00
float.h sys: further adoption of SPDX licensing ID tags. 2017-11-20 19:43:44 +00:00
fpu.h Renumber copyright clause 4 2017-02-28 23:42:47 +00:00
frame.h sys: further adoption of SPDX licensing ID tags. 2017-11-20 19:43:44 +00:00
ifunc.h Add helper macros to hide some boring repeatable ceremonies to define 2018-05-03 21:45:59 +00:00
init.h x86: improve reservation of AP trampoline memory 2018-04-05 14:39:51 +00:00
legacyvar.h sys/x86: further adoption of SPDX licensing ID tags. 2017-11-27 15:11:47 +00:00
mca.h sys/x86: further adoption of SPDX licensing ID tags. 2017-11-27 15:11:47 +00:00
metadata.h
mptable.h sys/x86: further adoption of SPDX licensing ID tags. 2017-11-27 15:11:47 +00:00
ofw_machdep.h sys/x86: further adoption of SPDX licensing ID tags. 2017-11-27 15:11:47 +00:00
pci_cfgreg.h sys/x86: further adoption of SPDX licensing ID tags. 2017-11-27 15:11:47 +00:00
psl.h sys: further adoption of SPDX licensing ID tags. 2017-11-20 19:43:44 +00:00
ptrace.h sys: further adoption of SPDX licensing ID tags. 2017-11-20 19:43:44 +00:00
pvclock.h
reg.h sys: further adoption of SPDX licensing ID tags. 2017-11-20 19:43:44 +00:00
segments.h sys: further adoption of SPDX licensing ID tags. 2017-11-20 19:43:44 +00:00
setjmp.h sys: further adoption of SPDX licensing ID tags. 2017-11-20 19:43:44 +00:00
sigframe.h sys/x86: further adoption of SPDX licensing ID tags. 2017-11-27 15:11:47 +00:00
signal.h Remove very old and unused signal information codes. 2018-03-27 20:57:51 +00:00
specialreg.h Add definition for Intel Speculative Store Bypass Disable MSR bits 2018-05-21 21:07:13 +00:00
stack.h
stdarg.h Introduce an architecture-agnostic <sys/_stdarg.h> to reduce 2017-12-25 20:54:00 +00:00
sysarch.h sys: further adoption of SPDX licensing ID tags. 2017-11-20 19:43:44 +00:00
trap.h Remove very old and unused signal information codes. 2018-03-27 20:57:51 +00:00
ucontext.h Fix a typo. 2018-03-19 17:14:56 +00:00
vdso.h sys/x86: further adoption of SPDX licensing ID tags. 2017-11-27 15:11:47 +00:00
vmware.h
x86_smp.h x86: improve reservation of AP trampoline memory 2018-04-05 14:39:51 +00:00
x86_var.h Add Intel Spec Store Bypass Disable control. 2018-05-21 21:08:19 +00:00