commit-hurd
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[hurd,commited] hurd: Add missing startup calls


From: Samuel Thibault
Subject: [hurd,commited] hurd: Add missing startup calls
Date: Wed, 11 Nov 2020 02:36:41 +0100

DL_SYSDEP_INIT and DL_PLATFORM_INIT were not getting called, leading to
missing x86 platform tuning, now mandatory with 0f09154c6400
("x86: Initialize CPU info via IFUNC relocation [BZ 26203]")
---
 sysdeps/mach/hurd/dl-sysdep.c | 16 ++++++++++++++++
 1 file changed, 16 insertions(+)

diff --git a/sysdeps/mach/hurd/dl-sysdep.c b/sysdeps/mach/hurd/dl-sysdep.c
index 2a9a6d12bc..5c0bb3124d 100644
--- a/sysdeps/mach/hurd/dl-sysdep.c
+++ b/sysdeps/mach/hurd/dl-sysdep.c
@@ -125,10 +125,26 @@ _dl_sysdep_start (void **start_argptr,
       else
        _dl_hurd_data = (void *) p;
 
+      GLRO(dl_platform) = NULL; /* Default to nothing known about the 
platform.  */
+
       __libc_enable_secure = _dl_hurd_data->flags & EXEC_SECURE;
 
       __tunables_init (_environ);
 
+#ifdef DL_SYSDEP_INIT
+      DL_SYSDEP_INIT;
+#endif
+
+#ifdef SHARED
+#ifdef DL_PLATFORM_INIT
+      DL_PLATFORM_INIT;
+#endif
+
+      /* Determine the length of the platform name.  */
+      if (GLRO(dl_platform) != NULL)
+       GLRO(dl_platformlen) = strlen (GLRO(dl_platform));
+#endif
+
       if (_dl_hurd_data->flags & EXEC_STACK_ARGS
          && _dl_hurd_data->user_entry == 0)
        _dl_hurd_data->user_entry = (vm_address_t) ENTRY_POINT;
-- 
2.28.0




reply via email to

[Prev in Thread] Current Thread [Next in Thread]