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 #define __VVAR_PAGES 2 16 17 #ifndef __ASSEMBLY__ 18 19 #include <generated/vdso-offsets.h> 20 #ifdef CONFIG_COMPAT_VDSO 21 #include <generated/vdso32-offsets.h> 22 #endif 23 24 #define VDSO_SYMBOL(base, name) \ 25 ({ \ 26 (void *)(vdso_offset_##name - VDSO_LBASE + (unsigned long)(base)); \ 27 }) 28 29 extern char vdso_start[], vdso_end[]; 30 extern char vdso32_start[], vdso32_end[]; 31 32 #endif /* !__ASSEMBLY__ */ 33 34 #endif /* __ASM_VDSO_H */ 35