diff options
Diffstat (limited to 'arch/x86/kernel/sysenter_32.c')
-rw-r--r-- | arch/x86/kernel/sysenter_32.c | 6 |
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 @@ | |||
23 | #include <asm/unistd.h> | 23 | #include <asm/unistd.h> |
24 | #include <asm/elf.h> | 24 | #include <asm/elf.h> |
25 | #include <asm/tlbflush.h> | 25 | #include <asm/tlbflush.h> |
26 | #include <asm/vdso.h> | ||
26 | 27 | ||
27 | enum { | 28 | enum { |
28 | VDSO_DISABLED = 0, | 29 | VDSO_DISABLED = 0, |
@@ -259,9 +260,6 @@ int __init sysenter_setup(void) | |||
259 | return 0; | 260 | return 0; |
260 | } | 261 | } |
261 | 262 | ||
262 | /* Defined in vsyscall-sysenter.S */ | ||
263 | extern void SYSENTER_RETURN; | ||
264 | |||
265 | /* Setup a VMA at program startup for the vsyscall page */ | 263 | /* Setup a VMA at program startup for the vsyscall page */ |
266 | int arch_setup_additional_pages(struct linux_binprm *bprm, int exstack) | 264 | int arch_setup_additional_pages(struct linux_binprm *bprm, int exstack) |
267 | { | 265 | { |
@@ -308,7 +306,7 @@ int arch_setup_additional_pages(struct linux_binprm *bprm, int exstack) | |||
308 | 306 | ||
309 | current->mm->context.vdso = (void *)addr; | 307 | current->mm->context.vdso = (void *)addr; |
310 | current_thread_info()->sysenter_return = | 308 | current_thread_info()->sysenter_return = |
311 | (void *)VDSO_SYM(&SYSENTER_RETURN); | 309 | VDSO32_SYMBOL(addr, SYSENTER_RETURN); |
312 | 310 | ||
313 | up_fail: | 311 | up_fail: |
314 | up_write(&mm->mmap_sem); | 312 | up_write(&mm->mmap_sem); |