summaryrefslogtreecommitdiffstats
path: root/arch/x86/xen/setup.c
diff options
context:
space:
mode:
authorRoland McGrath2008-01-30 13:30:43 +0100
committerIngo Molnar2008-01-30 13:30:43 +0100
commitaf65d64845a90c8f2fc90b97e2148ff74672e979 (patch)
treee70a57a9635acaf8154c150f95e11dcb51937fd8 /arch/x86/xen/setup.c
parentx86 vDSO: ia32 vdso32-syscall build (diff)
downloadkernel-qcow2-linux-af65d64845a90c8f2fc90b97e2148ff74672e979.tar.gz
kernel-qcow2-linux-af65d64845a90c8f2fc90b97e2148ff74672e979.tar.xz
kernel-qcow2-linux-af65d64845a90c8f2fc90b97e2148ff74672e979.zip
x86 vDSO: consolidate vdso32
This makes x86_64's ia32 emulation support share the sources used in the 32-bit kernel for the 32-bit vDSO and much of its setup code. The 32-bit vDSO mapping now behaves the same on x86_64 as on native 32-bit. The abi.syscall32 sysctl on x86_64 now takes the same values that vm.vdso_enabled takes on the 32-bit kernel. That is, 1 means a randomized vDSO location, 2 means the fixed old address. The CONFIG_COMPAT_VDSO option is now available to make this the default setting, the same meaning it has for the 32-bit kernel. (This does not affect the 64-bit vDSO.) The argument vdso32=[012] can be used on both 32-bit and 64-bit kernels to set this paramter at boot time. The vdso=[012] argument still does this same thing on the 32-bit kernel. Signed-off-by: Roland McGrath <roland@redhat.com> Cc: Andrew Morton <akpm@linux-foundation.org> Cc: Linus Torvalds <torvalds@linux-foundation.org> Signed-off-by: Thomas Gleixner <tglx@linutronix.de> Signed-off-by: Ingo Molnar <mingo@elte.hu> Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Diffstat (limited to 'arch/x86/xen/setup.c')
-rw-r--r--arch/x86/xen/setup.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/arch/x86/xen/setup.c b/arch/x86/xen/setup.c
index fd91568090f4..7d6d0ef55890 100644
--- a/arch/x86/xen/setup.c
+++ b/arch/x86/xen/setup.c
@@ -62,8 +62,8 @@ static void xen_idle(void)
*/
static void fiddle_vdso(void)
{
- extern char vsyscall_int80_start;
- u32 *mask = VDSO32_SYMBOL(&vsyscall_int80_start, NOTE_MASK);
+ extern const char vdso32_default_start;
+ u32 *mask = VDSO32_SYMBOL(&vdso32_default_start, NOTE_MASK);
*mask |= 1 << VDSO_NOTE_NONEGSEG_BIT;
}