xref: /linux/arch/arm64/include/asm/vdso.h (revision a7f7f6248d9740d710fd6bd190293fe5e16410ac)
1 /* SPDX-License-Identifier: GPL-2.0-only */
2 /*
3  * Copyright (C) 2012 ARM Limited
4  */
5 #ifndef __ASM_VDSO_H
6 #define __ASM_VDSO_H
7 
8 /*
9  * Default link address for the vDSO.
10  * Since we randomise the VDSO mapping, there's little point in trying
11  * to prelink this.
12  */
13 #define VDSO_LBASE	0x0
14 
15 #ifndef __ASSEMBLY__
16 
17 #include <generated/vdso-offsets.h>
18 #ifdef CONFIG_COMPAT_VDSO
19 #include <generated/vdso32-offsets.h>
20 #endif
21 
22 #define VDSO_SYMBOL(base, name)						   \
23 ({									   \
24 	(void *)(vdso_offset_##name - VDSO_LBASE + (unsigned long)(base)); \
25 })
26 
27 #endif /* !__ASSEMBLY__ */
28 
29 #endif /* __ASM_VDSO_H */
30