summaryrefslogtreecommitdiff
path: root/elf/dl-support.c
diff options
context:
space:
mode:
Diffstat (limited to 'elf/dl-support.c')
-rw-r--r--elf/dl-support.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/elf/dl-support.c b/elf/dl-support.c
index 88378a60a6..cfe01babbf 100644
--- a/elf/dl-support.c
+++ b/elf/dl-support.c
@@ -136,6 +136,8 @@ int (*_dl_make_stack_executable_hook) (void **) internal_function
#ifdef NEED_DL_SYSINFO
/* Needed for improved syscall handling on at least x86/Linux. */
uintptr_t _dl_sysinfo = DL_SYSINFO_DEFAULT;
+#endif
+#if defined NEED_DL_SYSINFO || defined NEED_DL_SYSINFO_DSO
/* Address of the ELF headers in the vsyscall page. */
const ElfW(Ehdr) *_dl_sysinfo_dso;
#endif
@@ -184,6 +186,11 @@ _dl_aux_init (ElfW(auxv_t) *av)
GL(dl_sysinfo) = av->a_un.a_val;
break;
#endif
+#if defined NEED_DL_SYSINFO || defined NEED_DL_SYSINFO_DSO
+ case AT_SYSINFO_EHDR:
+ GL(dl_sysinfo_dso) = av->a_un.a_ptr;
+ break;
+#endif
case AT_UID:
uid ^= av->a_un.a_val;
seen |= 1;