mirror of
https://github.com/torvalds/linux.git
synced 2024-12-30 23:02:08 +00:00
c06989da39
vdso_enabled can be set to arbitrary integer values via the kernel command
line 'vdso32=' parameter or via 'sysctl abi.vsyscall32'.
load_vdso32() only maps VDSO if vdso_enabled == 1, but ARCH_DLINFO_IA32
merily checks for vdso_enabled != 0. As a consequence the AT_SYSINFO_EHDR
auxiliary vector for the VDSO_ENTRY is emitted with a NULL pointer which
causes a segfault when the application tries to use the VDSO.
Restrict the valid arguments on the command line and the sysctl to 0 and 1.
Fixes:
|
||
---|---|---|
.. | ||
vdso32 | ||
.gitignore | ||
checkundef.sh | ||
Makefile | ||
vclock_gettime.c | ||
vdso2c.c | ||
vdso2c.h | ||
vdso32-setup.c | ||
vdso-layout.lds.S | ||
vdso-note.S | ||
vdso.lds.S | ||
vdsox32.lds.S | ||
vgetcpu.c | ||
vma.c |