vdso.h 829 B

12345678910111213141516171819202122232425262728
  1. #ifndef _ASM_X86_VDSO_H
  2. #define _ASM_X86_VDSO_H 1
  3. #ifdef CONFIG_X86_64
  4. extern const char VDSO64_PRELINK[];
  5. /*
  6. * Given a pointer to the vDSO image, find the pointer to VDSO64_name
  7. * as that symbol is defined in the vDSO sources or linker script.
  8. */
  9. #define VDSO64_SYMBOL(base, name) ({ \
  10. extern const char VDSO64_##name[]; \
  11. (void *) (VDSO64_##name - VDSO64_PRELINK + (unsigned long) (base)); })
  12. #endif
  13. #if defined CONFIG_X86_32 || defined CONFIG_COMPAT
  14. extern const char VDSO32_PRELINK[];
  15. /*
  16. * Given a pointer to the vDSO image, find the pointer to VDSO32_name
  17. * as that symbol is defined in the vDSO sources or linker script.
  18. */
  19. #define VDSO32_SYMBOL(base, name) ({ \
  20. extern const char VDSO32_##name[]; \
  21. (void *) (VDSO32_##name - VDSO32_PRELINK + (unsigned long) (base)); })
  22. #endif
  23. #endif /* asm-x86/vdso.h */