diff options
Diffstat (limited to 'include/asm-x86/vdso.h')
-rw-r--r-- | include/asm-x86/vdso.h | 23 |
1 files changed, 17 insertions, 6 deletions
diff --git a/include/asm-x86/vdso.h b/include/asm-x86/vdso.h index 629bcb6e8e45..86e085e003d2 100644 --- a/include/asm-x86/vdso.h +++ b/include/asm-x86/vdso.h | |||
@@ -8,9 +8,11 @@ extern const char VDSO64_PRELINK[]; | |||
8 | * Given a pointer to the vDSO image, find the pointer to VDSO64_name | 8 | * Given a pointer to the vDSO image, find the pointer to VDSO64_name |
9 | * as that symbol is defined in the vDSO sources or linker script. | 9 | * as that symbol is defined in the vDSO sources or linker script. |
10 | */ | 10 | */ |
11 | #define VDSO64_SYMBOL(base, name) ({ \ | 11 | #define VDSO64_SYMBOL(base, name) \ |
12 | extern const char VDSO64_##name[]; \ | 12 | ({ \ |
13 | (void *) (VDSO64_##name - VDSO64_PRELINK + (unsigned long) (base)); }) | 13 | extern const char VDSO64_##name[]; \ |
14 | (void *)(VDSO64_##name - VDSO64_PRELINK + (unsigned long)(base)); \ | ||
15 | }) | ||
14 | #endif | 16 | #endif |
15 | 17 | ||
16 | #if defined CONFIG_X86_32 || defined CONFIG_COMPAT | 18 | #if defined CONFIG_X86_32 || defined CONFIG_COMPAT |
@@ -20,9 +22,18 @@ extern const char VDSO32_PRELINK[]; | |||
20 | * Given a pointer to the vDSO image, find the pointer to VDSO32_name | 22 | * Given a pointer to the vDSO image, find the pointer to VDSO32_name |
21 | * as that symbol is defined in the vDSO sources or linker script. | 23 | * as that symbol is defined in the vDSO sources or linker script. |
22 | */ | 24 | */ |
23 | #define VDSO32_SYMBOL(base, name) ({ \ | 25 | #define VDSO32_SYMBOL(base, name) \ |
24 | extern const char VDSO32_##name[]; \ | 26 | ({ \ |
25 | (void *) (VDSO32_##name - VDSO32_PRELINK + (unsigned long) (base)); }) | 27 | extern const char VDSO32_##name[]; \ |
28 | (void *)(VDSO32_##name - VDSO32_PRELINK + (unsigned long)(base)); \ | ||
29 | }) | ||
26 | #endif | 30 | #endif |
27 | 31 | ||
32 | /* | ||
33 | * These symbols are defined with the addresses in the vsyscall page. | ||
34 | * See vsyscall-sigreturn.S. | ||
35 | */ | ||
36 | extern void __user __kernel_sigreturn; | ||
37 | extern void __user __kernel_rt_sigreturn; | ||
38 | |||
28 | #endif /* asm-x86/vdso.h */ | 39 | #endif /* asm-x86/vdso.h */ |