summaryrefslogtreecommitdiffstats
path: root/arch/x86/kernel/sysenter_32.c
diff options
context:
space:
mode:
authorRoland McGrath2008-01-30 13:30:42 +0100
committerIngo Molnar2008-01-30 13:30:42 +0100
commit6c3652efcafa6a6d795093362cb4290c84994b5c (patch)
tree1587379f45a7145a64c3103b40e12b01c46ea559 /arch/x86/kernel/sysenter_32.c
parentx86 vDSO: vdso32 build (diff)
downloadkernel-qcow2-linux-6c3652efcafa6a6d795093362cb4290c84994b5c.tar.gz
kernel-qcow2-linux-6c3652efcafa6a6d795093362cb4290c84994b5c.tar.xz
kernel-qcow2-linux-6c3652efcafa6a6d795093362cb4290c84994b5c.zip
x86 vDSO: i386 vdso32
This makes the i386 kernel use the new vDSO build in arch/x86/vdso/vdso32/ to replace the old one from arch/x86/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/kernel/sysenter_32.c')
-rw-r--r--arch/x86/kernel/sysenter_32.c6
1 files changed, 2 insertions, 4 deletions
diff --git a/arch/x86/kernel/sysenter_32.c b/arch/x86/kernel/sysenter_32.c
index 5a2d951e2608..85c52d23ee40 100644
--- a/arch/x86/kernel/sysenter_32.c
+++ b/arch/x86/kernel/sysenter_32.c
@@ -23,6 +23,7 @@
#include <asm/unistd.h>
#include <asm/elf.h>
#include <asm/tlbflush.h>
+#include <asm/vdso.h>
enum {
VDSO_DISABLED = 0,
@@ -259,9 +260,6 @@ int __init sysenter_setup(void)
return 0;
}
-/* Defined in vsyscall-sysenter.S */
-extern void SYSENTER_RETURN;
-
/* Setup a VMA at program startup for the vsyscall page */
int arch_setup_additional_pages(struct linux_binprm *bprm, int exstack)
{
@@ -308,7 +306,7 @@ int arch_setup_additional_pages(struct linux_binprm *bprm, int exstack)
current->mm->context.vdso = (void *)addr;
current_thread_info()->sysenter_return =
- (void *)VDSO_SYM(&SYSENTER_RETURN);
+ VDSO32_SYMBOL(addr, SYSENTER_RETURN);
up_fail:
up_write(&mm->mmap_sem);