public inbox for glibc-bugs@sourceware.org
help / color / mirror / Atom feed
From: "glaubitz at physik dot fu-berlin.de" <sourceware-bugzilla@sourceware.org>
To: glibc-bugs@sourceware.org
Subject: [Bug libc/29899] Fix for bz#20305 broke glibc on alpha-linux-gnu
Date: Wed, 14 Dec 2022 07:53:10 +0000	[thread overview]
Message-ID: <bug-29899-131-EqNFoIJq8R@http.sourceware.org/bugzilla/> (raw)
In-Reply-To: <bug-29899-131@http.sourceware.org/bugzilla/>

https://sourceware.org/bugzilla/show_bug.cgi?id=29899

--- Comment #5 from John Paul Adrian Glaubitz <glaubitz at physik dot fu-berlin.de> ---
This is the minimum change directly on top the commit that fixes the problem
for me:

diff --git a/elf/dl-sysdep.c b/elf/dl-sysdep.c
index bd5066fe3b..bc45a6e9d3 100644
--- a/elf/dl-sysdep.c
+++ b/elf/dl-sysdep.c
@@ -115,10 +115,10 @@ _dl_sysdep_start (void **start_argptr,
   user_entry = (ElfW(Addr)) ENTRY_POINT;
   GLRO(dl_platform) = NULL; /* Default to nothing known about the platform. 
*/

-  /* NB: Default to a constant CONSTANT_MINSIGSTKSZ.  */
-  _Static_assert (__builtin_constant_p (CONSTANT_MINSIGSTKSZ),
-             "CONSTANT_MINSIGSTKSZ is constant");
-  GLRO(dl_minsigstacksize) = CONSTANT_MINSIGSTKSZ;
+  /* /\* NB: Default to a constant CONSTANT_MINSIGSTKSZ.  *\/ */
+  /* _Static_assert (__builtin_constant_p (CONSTANT_MINSIGSTKSZ), */
+  /*                   "CONSTANT_MINSIGSTKSZ is constant"); */
+  /* GLRO(dl_minsigstacksize) = CONSTANT_MINSIGSTKSZ; */

   for (av = GLRO(dl_auxv); av->a_type != AT_NULL; set_seen (av++))
     switch (av->a_type)
@@ -184,9 +184,9 @@ _dl_sysdep_start (void **start_argptr,
       case AT_RANDOM:
        _dl_random = (void *) av->a_un.a_val;
        break;
-      case AT_MINSIGSTKSZ:
-   GLRO(dl_minsigstacksize) = av->a_un.a_val;
-   break;
+      /* case AT_MINSIGSTKSZ: */
+      /*     GLRO(dl_minsigstacksize) = av->a_un.a_val; */
+      /*     break; */
       DL_PLATFORM_AUXV
       }

diff --git a/sysdeps/generic/ldsodefs.h b/sysdeps/generic/ldsodefs.h
index 9720a4e446..9ead714718 100644
--- a/sysdeps/generic/ldsodefs.h
+++ b/sysdeps/generic/ldsodefs.h
@@ -536,8 +536,8 @@ struct rtld_global_ro
   /* Cached value of `getpagesize ()'.  */
   EXTERN size_t _dl_pagesize;

-  /* Cached value of `sysconf (_SC_MINSIGSTKSZ)'.  */
-  EXTERN size_t _dl_minsigstacksize;
+  /* /\* Cached value of `sysconf (_SC_MINSIGSTKSZ)'.  *\/ */
+  /* EXTERN size_t _dl_minsigstacksize; */

   /* Do we read from ld.so.cache?  */
   EXTERN int _dl_inhibit_cache;
diff --git a/sysdeps/unix/sysv/linux/sysconf.c
b/sysdeps/unix/sysv/linux/sysconf.c
index 366fcef01e..5a5c89f80e 100644
--- a/sysdeps/unix/sysv/linux/sysconf.c
+++ b/sysdeps/unix/sysv/linux/sysconf.c
@@ -77,12 +77,12 @@ __sysconf (int name)
       }
       break;

-    case _SC_MINSIGSTKSZ:
-      assert (GLRO(dl_minsigstacksize) != 0);
-      return GLRO(dl_minsigstacksize);
+    /* case _SC_MINSIGSTKSZ: */
+    /*   assert (GLRO(dl_minsigstacksize) != 0); */
+    /*   return GLRO(dl_minsigstacksize); */

-    case _SC_SIGSTKSZ:
-      return sysconf_sigstksz ();
+    /* case _SC_SIGSTKSZ: */
+    /*   return sysconf_sigstksz (); */

     default:
       break;

So, my suspicion is that adding the variable _dl_minsigstacksize to struct
rtld_global_ro {} breaks the ABI on Alpha.

-- 
You are receiving this mail because:
You are on the CC list for the bug.

  parent reply	other threads:[~2022-12-14  7:53 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-12-13 17:43 [Bug libc/29899] New: " glaubitz at physik dot fu-berlin.de
2022-12-13 17:43 ` [Bug libc/29899] " glaubitz at physik dot fu-berlin.de
2022-12-13 17:43 ` glaubitz at physik dot fu-berlin.de
2022-12-13 19:52 ` hjl.tools at gmail dot com
2022-12-13 20:38 ` glaubitz at physik dot fu-berlin.de
2022-12-13 21:12 ` hjl.tools at gmail dot com
2022-12-13 21:22 ` glaubitz at physik dot fu-berlin.de
2022-12-14  7:45 ` sam at gentoo dot org
2022-12-14  7:53 ` glaubitz at physik dot fu-berlin.de [this message]
2022-12-14 16:00 ` hjl.tools at gmail dot com
2022-12-21 10:25 ` glaubitz at physik dot fu-berlin.de
2022-12-30 14:35 ` glaubitz at physik dot fu-berlin.de

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=bug-29899-131-EqNFoIJq8R@http.sourceware.org/bugzilla/ \
    --to=sourceware-bugzilla@sourceware.org \
    --cc=glibc-bugs@sourceware.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).