powerpc/vdso: Remove __kernel_datapage_offset
authorChristophe Leroy <christophe.leroy@csgroup.eu>
Sun, 27 Sep 2020 09:16:37 +0000 (09:16 +0000)
committerMichael Ellerman <mpe@ellerman.id.au>
Thu, 3 Dec 2020 14:01:18 +0000 (01:01 +1100)
__kernel_datapage_offset is not used anymore, remove it.

Signed-off-by: Christophe Leroy <christophe.leroy@csgroup.eu>
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
Link: https://lore.kernel.org/r/ddb5c746bec4e1a026d7c85243213a1876ef844f.1601197618.git.christophe.leroy@csgroup.eu
arch/powerpc/kernel/vdso.c
arch/powerpc/kernel/vdso32/datapage.S
arch/powerpc/kernel/vdso32/vdso32.lds.S
arch/powerpc/kernel/vdso64/datapage.S
arch/powerpc/kernel/vdso64/vdso64.lds.S

index 264c5c5..4c97705 100644 (file)
@@ -491,42 +491,6 @@ static __init void vdso_setup_trampolines(struct lib32_elfinfo *v32,
        vdso32_rt_sigtramp = find_function32(v32, "__kernel_sigtramp_rt32");
 }
 
-static __init int vdso_fixup_datapage(struct lib32_elfinfo *v32,
-                                      struct lib64_elfinfo *v64)
-{
-#ifdef CONFIG_VDSO32
-       Elf32_Sym *sym32;
-#endif
-#ifdef CONFIG_PPC64
-       Elf64_Sym *sym64;
-
-               sym64 = find_symbol64(v64, "__kernel_datapage_offset");
-       if (sym64 == NULL) {
-               printk(KERN_ERR "vDSO64: Can't find symbol "
-                      "__kernel_datapage_offset !\n");
-               return -1;
-       }
-       *((int *)(vdso64_kbase + sym64->st_value - VDSO64_LBASE)) =
-               -PAGE_SIZE -
-               (sym64->st_value - VDSO64_LBASE);
-#endif /* CONFIG_PPC64 */
-
-#ifdef CONFIG_VDSO32
-       sym32 = find_symbol32(v32, "__kernel_datapage_offset");
-       if (sym32 == NULL) {
-               printk(KERN_ERR "vDSO32: Can't find symbol "
-                      "__kernel_datapage_offset !\n");
-               return -1;
-       }
-       *((int *)(vdso32_kbase + (sym32->st_value - VDSO32_LBASE))) =
-               -PAGE_SIZE -
-               (sym32->st_value - VDSO32_LBASE);
-#endif
-
-       return 0;
-}
-
-
 static __init int vdso_fixup_features(struct lib32_elfinfo *v32,
                                      struct lib64_elfinfo *v64)
 {
@@ -592,9 +556,6 @@ static __init int vdso_setup(void)
        if (vdso_do_find_sections(&v32, &v64))
                return -1;
 
-       if (vdso_fixup_datapage(&v32, &v64))
-               return -1;
-
        if (vdso_fixup_features(&v32, &v64))
                return -1;
 
index abff225..6524441 100644 (file)
@@ -13,9 +13,6 @@
 #include <asm/vdso_datapage.h>
 
        .text
-       .global __kernel_datapage_offset;
-__kernel_datapage_offset:
-       .long   0
 
 /*
  * void *__kernel_get_syscall_map(unsigned int *syscall_count) ;
index 18b10d1..660891a 100644 (file)
@@ -149,11 +149,6 @@ VERSION
 {
        VDSO_VERSION_STRING {
        global:
-               /*
-                * Has to be there for the kernel to find
-                */
-               __kernel_datapage_offset;
-
                __kernel_get_syscall_map;
                __kernel_gettimeofday;
                __kernel_clock_gettime;
index 941b735..00760dc 100644 (file)
@@ -13,9 +13,6 @@
 #include <asm/vdso_datapage.h>
 
        .text
-.global        __kernel_datapage_offset;
-__kernel_datapage_offset:
-       .long   0
 
 /*
  * void *__kernel_get_syscall_map(unsigned int *syscall_count) ;
index 21aec13..0cacd51 100644 (file)
@@ -148,11 +148,6 @@ VERSION
 {
        VDSO_VERSION_STRING {
        global:
-               /*
-                * Has to be there for the kernel to find
-                */
-               __kernel_datapage_offset;
-
                __kernel_get_syscall_map;
                __kernel_gettimeofday;
                __kernel_clock_gettime;