xref: /kernel/linux/linux-5.10/arch/x86/um/vdso/vdso.lds.S (revision 8c2ecf20)
18c2ecf20Sopenharmony_ci/* SPDX-License-Identifier: GPL-2.0 */
28c2ecf20Sopenharmony_ci/*
38c2ecf20Sopenharmony_ci * Linker script for 64-bit vDSO.
48c2ecf20Sopenharmony_ci * We #include the file to define the layout details.
58c2ecf20Sopenharmony_ci * Here we only choose the prelinked virtual address.
68c2ecf20Sopenharmony_ci *
78c2ecf20Sopenharmony_ci * This file defines the version script giving the user-exported symbols in
88c2ecf20Sopenharmony_ci * the DSO.  We can define local symbols here called VDSO* to make their
98c2ecf20Sopenharmony_ci * values visible using the asm-x86/vdso.h macros from the kernel proper.
108c2ecf20Sopenharmony_ci */
118c2ecf20Sopenharmony_ci
128c2ecf20Sopenharmony_ci#define VDSO_PRELINK 0xffffffffff700000
138c2ecf20Sopenharmony_ci#include "vdso-layout.lds.S"
148c2ecf20Sopenharmony_ci
158c2ecf20Sopenharmony_ci/*
168c2ecf20Sopenharmony_ci * This controls what userland symbols we export from the vDSO.
178c2ecf20Sopenharmony_ci */
188c2ecf20Sopenharmony_ciVERSION {
198c2ecf20Sopenharmony_ci	LINUX_2.6 {
208c2ecf20Sopenharmony_ci	global:
218c2ecf20Sopenharmony_ci		clock_gettime;
228c2ecf20Sopenharmony_ci		__vdso_clock_gettime;
238c2ecf20Sopenharmony_ci		gettimeofday;
248c2ecf20Sopenharmony_ci		__vdso_gettimeofday;
258c2ecf20Sopenharmony_ci		getcpu;
268c2ecf20Sopenharmony_ci		__vdso_getcpu;
278c2ecf20Sopenharmony_ci		time;
288c2ecf20Sopenharmony_ci		__vdso_time;
298c2ecf20Sopenharmony_ci	local: *;
308c2ecf20Sopenharmony_ci	};
318c2ecf20Sopenharmony_ci}
328c2ecf20Sopenharmony_ci
338c2ecf20Sopenharmony_ciVDSO64_PRELINK = VDSO_PRELINK;
34