aboutsummaryrefslogtreecommitdiffstats
path: root/arch/x86/Kconfig
diff options
context:
space:
mode:
Diffstat (limited to 'arch/x86/Kconfig')
-rw-r--r--arch/x86/Kconfig30
1 files changed, 21 insertions, 9 deletions
diff --git a/arch/x86/Kconfig b/arch/x86/Kconfig
index 26237934ac87..ac04d9804391 100644
--- a/arch/x86/Kconfig
+++ b/arch/x86/Kconfig
@@ -107,9 +107,9 @@ config X86
107 select HAVE_ARCH_SOFT_DIRTY 107 select HAVE_ARCH_SOFT_DIRTY
108 select CLOCKSOURCE_WATCHDOG 108 select CLOCKSOURCE_WATCHDOG
109 select GENERIC_CLOCKEVENTS 109 select GENERIC_CLOCKEVENTS
110 select ARCH_CLOCKSOURCE_DATA if X86_64 110 select ARCH_CLOCKSOURCE_DATA
111 select GENERIC_CLOCKEVENTS_BROADCAST if X86_64 || (X86_32 && X86_LOCAL_APIC) 111 select GENERIC_CLOCKEVENTS_BROADCAST if X86_64 || (X86_32 && X86_LOCAL_APIC)
112 select GENERIC_TIME_VSYSCALL if X86_64 112 select GENERIC_TIME_VSYSCALL
113 select KTIME_SCALAR if X86_32 113 select KTIME_SCALAR if X86_32
114 select GENERIC_STRNCPY_FROM_USER 114 select GENERIC_STRNCPY_FROM_USER
115 select GENERIC_STRNLEN_USER 115 select GENERIC_STRNLEN_USER
@@ -1848,17 +1848,29 @@ config DEBUG_HOTPLUG_CPU0
1848 If unsure, say N. 1848 If unsure, say N.
1849 1849
1850config COMPAT_VDSO 1850config COMPAT_VDSO
1851 def_bool y 1851 def_bool n
1852 prompt "Compat VDSO support" 1852 prompt "Disable the 32-bit vDSO (needed for glibc 2.3.3)"
1853 depends on X86_32 || IA32_EMULATION 1853 depends on X86_32 || IA32_EMULATION
1854 ---help--- 1854 ---help---
1855 Map the 32-bit VDSO to the predictable old-style address too. 1855 Certain buggy versions of glibc will crash if they are
1856 presented with a 32-bit vDSO that is not mapped at the address
1857 indicated in its segment table.
1856 1858
1857 Say N here if you are running a sufficiently recent glibc 1859 The bug was introduced by f866314b89d56845f55e6f365e18b31ec978ec3a
1858 version (2.3.3 or later), to remove the high-mapped 1860 and fixed by 3b3ddb4f7db98ec9e912ccdf54d35df4aa30e04a and
1859 VDSO mapping and to exclusively use the randomized VDSO. 1861 49ad572a70b8aeb91e57483a11dd1b77e31c4468. Glibc 2.3.3 is
1862 the only released version with the bug, but OpenSUSE 9
1863 contains a buggy "glibc 2.3.2".
1860 1864
1861 If unsure, say Y. 1865 The symptom of the bug is that everything crashes on startup, saying:
1866 dl_main: Assertion `(void *) ph->p_vaddr == _rtld_local._dl_sysinfo_dso' failed!
1867
1868 Saying Y here changes the default value of the vdso32 boot
1869 option from 1 to 0, which turns off the 32-bit vDSO entirely.
1870 This works around the glibc bug but hurts performance.
1871
1872 If unsure, say N: if you are compiling your own kernel, you
1873 are unlikely to be using a buggy version of glibc.
1862 1874
1863config CMDLINE_BOOL 1875config CMDLINE_BOOL
1864 bool "Built-in kernel command line" 1876 bool "Built-in kernel command line"