1
0
Fork 0
mirror of synced 2025-03-06 20:59:54 +01:00
linux/Documentation
Anand K Mistry fe71988834 proc: provide details on indirect branch speculation
Similar to speculation store bypass, show information about the indirect
branch speculation mode of a task in /proc/$pid/status.

For testing/benchmarking, I needed to see whether IB (Indirect Branch)
speculation (see Spectre-v2) is enabled on a task, to see whether an
IBPB instruction should be executed on an address space switch.
Unfortunately, this information isn't available anywhere else and
currently the only way to get it is to hack the kernel to expose it
(like this change).  It also helped expose a bug with conditional IB
speculation on certain CPUs.

Another place this could be useful is to audit the system when using
sanboxing.  With this change, I can confirm that seccomp-enabled
process have IB speculation force disabled as expected when the kernel
command line parameter `spectre_v2_user=seccomp`.

Since there's already a 'Speculation_Store_Bypass' field, I used that
as precedent for adding this one.

[amistry@google.com: remove underscores from field name to workaround documentation issue]
  Link: https://lkml.kernel.org/r/20201106131015.v2.1.I7782b0cedb705384a634cfd8898eb7523562da99@changeid

Link: https://lkml.kernel.org/r/20201030172731.1.I7782b0cedb705384a634cfd8898eb7523562da99@changeid
Signed-off-by: Anand K Mistry <amistry@google.com>
Cc: Anthony Steinhauser <asteinhauser@google.com>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Anand K Mistry <amistry@google.com>
Cc: Alexey Dobriyan <adobriyan@gmail.com>
Cc: Alexey Gladkov <gladkov.alexey@gmail.com>
Cc: Jonathan Corbet <corbet@lwn.net>
Cc: Kees Cook <keescook@chromium.org>
Cc: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
Cc: Michal Hocko <mhocko@suse.com>
Cc: Mike Rapoport <rppt@kernel.org>
Cc: NeilBrown <neilb@suse.de>
Cc: Peter Zijlstra <peterz@infradead.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2020-12-15 22:46:15 -08:00
..
ABI pci-v5.11-changes 2020-12-15 16:49:59 -08:00
accounting
admin-guide Merge branch 'akpm' (patches from Andrew) 2020-12-15 14:55:10 -08:00
arm docs: archis: add a per-architecture features list 2020-12-03 15:10:15 -07:00
arm64 A much quieter cycle for documentation (happily), with, one hopes, the bulk 2020-12-14 16:55:54 -08:00
block block-5.10-2020-10-24 2020-10-24 12:46:42 -07:00
bpf bpf: Migrate from patchwork.ozlabs.org to patchwork.kernel.org. 2020-10-11 22:05:47 +02:00
cdrom A handful of obvious fixes that wandered in during the merge window. 2020-08-13 13:57:45 -07:00
core-api Generic interrupt and irqchips subsystem: 2020-12-15 15:03:31 -08:00
cpu-freq
crypto crypto: af_alg - add extra parameters for DRBG interface 2020-09-25 17:48:52 +10:00
dev-tools Merge branch 'akpm' (patches from Andrew) 2020-12-15 12:53:37 -08:00
devicetree pci-v5.11-changes 2020-12-15 16:49:59 -08:00
doc-guide kernel-doc: Fix example in Nested structs/unions 2020-12-08 10:23:17 -07:00
driver-api Power management updates for 5.11-rc1 2020-12-15 16:30:31 -08:00
fault-injection A handful of late-arriving documentation fixes. 2020-10-23 17:13:53 -07:00
fb drm fixes (round two) for 5.10-rc1 2020-10-23 13:56:34 -07:00
features scripts: get_feat.pl: use its implementation for list-arch.sh 2020-12-03 15:10:14 -07:00
filesystems proc: provide details on indirect branch speculation 2020-12-15 22:46:15 -08:00
firmware-guide Documentation: ACPI: enumeration: add PCI hierarchy representation 2020-11-23 17:59:49 +01:00
firmware_class
fpga Char/Misc driver patches for 5.9-rc1 2020-08-05 11:43:47 -07:00
gpu drm/docs: Fix todo.rst 2020-11-18 11:51:58 +01:00
hid docs: hid: Convert link to https 2020-07-13 11:26:37 -06:00
hwmon hwmon: (sbtsi) Add documentation 2020-12-12 08:34:29 -08:00
i2c Documentation: i2c: add testunit docs to index 2020-10-05 22:57:45 +02:00
ia64 docs: archis: add a per-architecture features list 2020-12-03 15:10:15 -07:00
ide
iio Documentation: iio: fix a typo 2020-09-09 11:41:20 -06:00
infiniband
input Input: document inhibiting 2020-12-02 22:10:37 -08:00
isdn
kbuild kbuild: remove unused OBJSIZE 2020-11-02 11:31:00 +09:00
kernel-hacking
leds docs: leds: index.rst: add a missing file 2020-11-02 13:45:37 +01:00
litmus-tests
livepatch
locking Documentation: seqlock: s/LOCKTYPE/LOCKNAME/g 2020-12-09 17:08:49 +01:00
m68k docs: archis: add a per-architecture features list 2020-12-03 15:10:15 -07:00
maintainer Documentation/maintainer: rehome sign-off process 2020-09-03 15:39:24 -06:00
mhi
mips docs: archis: add a per-architecture features list 2020-12-03 15:10:15 -07:00
misc-devices Documentation: remove mic/index from misc-devices/index.rst 2020-11-04 11:38:32 +01:00
netlabel
networking Networking updates for 5.11 2020-12-15 13:22:29 -08:00
nios2 docs: nios2: add missing ReST file 2020-12-07 08:35:21 -07:00
nvdimm
openrisc docs: archis: add a per-architecture features list 2020-12-03 15:10:15 -07:00
parisc docs: archis: add a per-architecture features list 2020-12-03 15:10:15 -07:00
PCI Documentation: better locations for sysfs-pci, sysfs-tagging 2020-10-09 09:33:23 -06:00
pcmcia
power PM: EM: Update Energy Model with new flag indicating power scale 2020-11-10 20:29:28 +01:00
powerpc docs: archis: add a per-architecture features list 2020-12-03 15:10:15 -07:00
process Networking updates for 5.11 2020-12-15 13:22:29 -08:00
RCU docs/rcu: Update the call_rcu() API 2020-11-06 17:02:43 -08:00
riscv docs: archis: add a per-architecture features list 2020-12-03 15:10:15 -07:00
s390 docs: archis: add a per-architecture features list 2020-12-03 15:10:15 -07:00
scheduler Power management updates for 5.11-rc1 2020-12-15 16:30:31 -08:00
scsi SPDX patches for 5.10-rc1 2020-10-14 16:19:42 -07:00
security Documentation: remove current_security() reference 2020-09-09 11:33:59 -06:00
sh docs: archis: add a per-architecture features list 2020-12-03 15:10:15 -07:00
sound ALSA: usb-audio: Add implicit_fb module option 2020-11-23 15:17:24 +01:00
sparc docs: archis: add a per-architecture features list 2020-12-03 15:10:15 -07:00
sphinx docs: update requirements to install six module 2020-12-09 17:27:47 -07:00
sphinx-static
spi SPI SUBSYSTEM: Replace HTTP links with HTTPS ones 2020-07-09 22:41:11 +01:00
staging remoteproc updates for v5.9 2020-08-11 11:17:45 -07:00
target
timers docs: timers: drop documentation about LB_BIAS 2020-07-23 14:32:44 -06:00
trace mm/lru: revise the comments of lru_lock 2020-12-15 14:48:04 -08:00
translations Networking updates for 5.11 2020-12-15 13:22:29 -08:00
usb USB: Replace HTTP links with HTTPS ones 2020-07-21 13:41:57 +02:00
userspace-api "Intel SGX is new hardware functionality that can be used by 2020-12-14 13:14:57 -08:00
virt KVM: mmu: Fix SPTE encoding of MMIO generation upper half 2020-12-11 19:18:43 -05:00
vm mm/lru: revise the comments of lru_lock 2020-12-15 14:48:04 -08:00
w1 w1: w1_therm: Rename conflicting sysfs attribute 'eeprom' to 'eeprom_cmd' 2020-11-12 08:50:13 +01:00
watchdog watchdog: add support for adjusting last known HW keepalive time 2020-08-05 18:43:02 +02:00
x86 A much quieter cycle for documentation (happily), with, one hopes, the bulk 2020-12-14 16:55:54 -08:00
xtensa A much quieter cycle for documentation (happily), with, one hopes, the bulk 2020-12-14 16:55:54 -08:00
.gitignore
asm-annotations.rst
atomic_bitops.txt
atomic_t.txt
Changes
CodingStyle
conf.py docs: Note that sphinx 1.7 will be required soon 2020-12-11 13:53:38 -07:00
COPYING-logo
docutils.conf
dontdiff Documentation: dontdiff: Add zstd compressed files 2020-07-31 11:51:10 +02:00
index.rst docs: archis: add a per-architecture features list 2020-12-03 15:10:15 -07:00
Kconfig docs: Kconfig/Makefile: add a check for broken ABI files 2020-10-30 13:08:07 +01:00
logo.gif
Makefile A small number of fixes, plus a build tweak to respect the desire for 2020-11-03 09:57:30 -08:00
memory-barriers.txt docs/memory-barriers.txt: Fix a typo in CPU MEMORY BARRIERS section 2020-11-06 17:24:51 -08:00
SubmittingPatches
watch_queue.rst docs: watch_queue: fix some warnings 2020-09-10 10:48:56 -06:00