mirror-linux/Documentation
Sohil Mehta b36d1f53d9 x86/vsyscall: Disable LASS if vsyscall mode is set to EMULATE
The EMULATE mode of vsyscall maps the vsyscall page with a high kernel
address directly into user address space. Reading the vsyscall page in
EMULATE mode would cause LASS to trigger a #GP.

Fixing the LASS violation in EMULATE mode would require complex
instruction decoding because the resulting #GP does include the
necessary error information, and the vsyscall address is not
readily available in the RIP.

The EMULATE mode has been deprecated since 2022 and can only be enabled
using the command line parameter vsyscall=emulate. See commit
bf00745e77 ("x86/vsyscall: Remove CONFIG_LEGACY_VSYSCALL_EMULATE") for
details. At this point, no one is expected to be using this insecure
mode. The rare usages that need it obviously do not care about security.

Disable LASS when EMULATE mode is requested to avoid breaking legacy
user software. Also, update the vsyscall documentation to reflect this.
LASS will only be supported if vsyscall mode is set to XONLY (default)
or NONE.

Signed-off-by: Sohil Mehta <sohil.mehta@intel.com>
Signed-off-by: Dave Hansen <dave.hansen@linux.intel.com>
Reviewed-by: Rick Edgecombe <rick.p.edgecombe@intel.com>
Reviewed-by: Dave Hansen <dave.hansen@linux.intel.com>
Reviewed-by: H. Peter Anvin (Intel) <hpa@zytor.com>
Tested-by: Maciej Wieczor-Retman <maciej.wieczor-retman@intel.com>
Link: https://patch.msgid.link/20260309181029.398498-5-sohil.mehta@intel.com
2026-03-19 15:11:13 -07:00
..
ABI dmaengine updates for v7.0 2026-02-17 11:47:17 -08:00
PCI Networking changes for 7.0 2026-02-11 19:31:52 -08:00
RCU A slightly calmer cycle for docs this time around, though there is still a 2026-02-09 20:53:18 -08:00
accel
accounting
admin-guide x86/vsyscall: Disable LASS if vsyscall mode is set to EMULATE 2026-03-19 15:11:13 -07:00
arch RISC-V updates for v7.0 2026-02-12 19:17:44 -08:00
block
bpf bpf-next-7.0 2026-02-10 11:26:21 -08:00
cdrom
core-api A handful of small, late-arriving documentation fixes. 2026-02-15 10:47:59 -08:00
cpu-freq
crypto
dev-tools Documentation: Coccinelle: document debug log handling 2026-02-21 17:22:45 +01:00
devicetree spi: Fixes for v7.0 2026-02-28 09:21:18 -08:00
doc-guide
driver-api dmaengine updates for v7.0 2026-02-17 11:47:17 -08:00
edac
fault-injection
fb
features
filesystems overlayfs updates for 7.0 2026-02-17 15:08:24 -08:00
firmware-guide
firmware_class
fpga
gpu drm for 7.0-rc1 2026-02-11 12:55:44 -08:00
hid
hwmon hwmon updates for v7.0 2026-02-11 11:00:19 -08:00
i2c
iio
images
infiniband
input
isdn
kbuild Kbuild/Kconfig updates for 7.0 2026-02-11 13:40:35 -08:00
kernel-hacking
leds docs: leds: Document TI LP5812 LED driver 2026-02-04 09:23:37 +00:00
litmus-tests
livepatch
locking
maintainer
mhi
misc-devices TTY / Serial driver updates for 7.0-rc1 2026-02-17 09:30:52 -08:00
mm A handful of small, late-arriving documentation fixes. 2026-02-15 10:47:59 -08:00
netlabel
netlink NFSD 7.0 Release Notes 2026-02-12 08:23:53 -08:00
networking ipv6: icmp: remove obsolete code in icmpv6_xrlim_allow() 2026-02-18 16:46:36 -08:00
nvdimm
nvme
pcmcia
peci
power power supply and reset changes for the 7.0 series 2026-02-12 18:24:37 -08:00
process A handful of small, late-arriving documentation fixes. 2026-02-15 10:47:59 -08:00
rust Rust changes for v6.20 / v7.0 2026-02-10 11:53:01 -08:00
scheduler bpf-next-7.0 2026-02-10 11:26:21 -08:00
scsi SCSI misc on 20260212 2026-02-12 15:43:02 -08:00
security
sound
sphinx
sphinx-includes
sphinx-static
spi spi: Updates for v7.0 2026-02-11 09:43:43 -08:00
staging
sunrpc/xdr
target
tee
timers
tools RTLA patches for v7.0 2026-02-12 14:31:02 -08:00
trace Char/Misc/IIO driver changes for 7.0-rc1 2026-02-17 09:11:04 -08:00
translations mm.git review status for linus..mm-stable 2026-02-12 11:32:37 -08:00
usb USB / Thunderbolt changes for 7.0-rc1 2026-02-17 09:36:43 -08:00
userspace-api Char/Misc/IIO driver changes for 7.0-rc1 2026-02-17 09:11:04 -08:00
virt KVM: always define KVM_CAP_SYNC_MMU 2026-02-28 15:31:35 +01:00
w1
watchdog linux-watchdog 6.20-rc1 tag 2026-02-16 12:21:22 -08:00
wmi platform-drivers-x86 for v7.0-1 2026-02-13 15:39:15 -08:00
.gitignore
.renames.txt
Changes
CodingStyle
Kconfig
Makefile
SubmittingPatches
atomic_bitops.txt
atomic_t.txt
conf.py
docutils.conf
index.rst
memory-barriers.txt
subsystem-apis.rst