The values are not used anymore.
Also the sanity checks performed by vdso2c can never trigger as they
only validate invariants already enforced by the linker script.

Signed-off-by: Thomas Weißschuh <thomas.weisssc...@linutronix.de>
---
 arch/x86/entry/vdso/vdso-layout.lds.S |  4 ----
 arch/x86/entry/vdso/vdso2c.c          | 21 ---------------------
 arch/x86/entry/vdso/vdso2c.h          | 20 --------------------
 arch/x86/include/asm/vdso.h           |  6 ------
 4 files changed, 51 deletions(-)

diff --git a/arch/x86/entry/vdso/vdso-layout.lds.S 
b/arch/x86/entry/vdso/vdso-layout.lds.S
index 
e5cecdb0fedf000516bb789d6aca4c952c3035e5..ec1ac191a0578e55dc72ceff7f5b5eb104042881
 100644
--- a/arch/x86/entry/vdso/vdso-layout.lds.S
+++ b/arch/x86/entry/vdso/vdso-layout.lds.S
@@ -24,10 +24,6 @@ SECTIONS
        pvclock_page = vclock_pages + VDSO_PAGE_PVCLOCK_OFFSET * PAGE_SIZE;
        hvclock_page = vclock_pages + VDSO_PAGE_HVCLOCK_OFFSET * PAGE_SIZE;
 
-       /* For compatibility with vdso2c */
-       vvar_page = vdso_u_data;
-       vvar_start = vdso_u_data;
-
        . = SIZEOF_HEADERS;
 
        .hash           : { *(.hash) }                  :text
diff --git a/arch/x86/entry/vdso/vdso2c.c b/arch/x86/entry/vdso/vdso2c.c
index 
90d15f2a72055e37f2ef4292096dd780a051bc84..f84e8f8fa5fe6d1bc680895dfef28fe9251a7fe3
 100644
--- a/arch/x86/entry/vdso/vdso2c.c
+++ b/arch/x86/entry/vdso/vdso2c.c
@@ -69,33 +69,12 @@
 
 const char *outfilename;
 
-/* Symbols that we need in vdso2c. */
-enum {
-       sym_vvar_start,
-       sym_vvar_page,
-       sym_pvclock_page,
-       sym_hvclock_page,
-       sym_timens_page,
-};
-
-const int special_pages[] = {
-       sym_vvar_page,
-       sym_pvclock_page,
-       sym_hvclock_page,
-       sym_timens_page,
-};
-
 struct vdso_sym {
        const char *name;
        bool export;
 };
 
 struct vdso_sym required_syms[] = {
-       [sym_vvar_start] = {"vvar_start", true},
-       [sym_vvar_page] = {"vvar_page", true},
-       [sym_pvclock_page] = {"pvclock_page", true},
-       [sym_hvclock_page] = {"hvclock_page", true},
-       [sym_timens_page] = {"timens_page", true},
        {"VDSO32_NOTE_MASK", true},
        {"__kernel_vsyscall", true},
        {"__kernel_sigreturn", true},
diff --git a/arch/x86/entry/vdso/vdso2c.h b/arch/x86/entry/vdso/vdso2c.h
index 
67b3e37576a64a29ecbdc6fd75e410fc52a82e58..78ed1c1f28b92b97973f57d3f65b9c4d4694f462
 100644
--- a/arch/x86/entry/vdso/vdso2c.h
+++ b/arch/x86/entry/vdso/vdso2c.h
@@ -150,26 +150,6 @@ static void BITSFUNC(go)(void *raw_addr, size_t raw_len,
                }
        }
 
-       /* Validate mapping addresses. */
-       for (i = 0; i < sizeof(special_pages) / sizeof(special_pages[0]); i++) {
-               INT_BITS symval = syms[special_pages[i]];
-
-               if (!symval)
-                       continue;  /* The mapping isn't used; ignore it. */
-
-               if (symval % 4096)
-                       fail("%s must be a multiple of 4096\n",
-                            required_syms[i].name);
-               if (symval + 4096 < syms[sym_vvar_start])
-                       fail("%s underruns vvar_start\n",
-                            required_syms[i].name);
-               if (symval + 4096 > 0)
-                       fail("%s is on the wrong side of the vdso text\n",
-                            required_syms[i].name);
-       }
-       if (syms[sym_vvar_start] % 4096)
-               fail("vvar_begin must be a multiple of 4096\n");
-
        if (!image_name) {
                fwrite(stripped_addr, stripped_len, 1, outfile);
                return;
diff --git a/arch/x86/include/asm/vdso.h b/arch/x86/include/asm/vdso.h
index 
d7f6592b74a94f6fecba59ce8f23eb3990843db4..80be0da733df43de7520bef69ad120ce05d37994
 100644
--- a/arch/x86/include/asm/vdso.h
+++ b/arch/x86/include/asm/vdso.h
@@ -18,12 +18,6 @@ struct vdso_image {
        unsigned long extable_base, extable_len;
        const void *extable;
 
-       long sym_vvar_start;  /* Negative offset to the vvar area */
-
-       long sym_vvar_page;
-       long sym_pvclock_page;
-       long sym_hvclock_page;
-       long sym_timens_page;
        long sym_VDSO32_NOTE_MASK;
        long sym___kernel_sigreturn;
        long sym___kernel_rt_sigreturn;

-- 
2.48.1


Reply via email to