This is the mail archive of the libc-alpha@sourceware.org mailing list for the glibc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH] i386: Change offset of __private_ss to 0x30


On 05/30/2018 06:47 PM, H.J. Lu wrote:
On Wed, May 30, 2018 at 9:43 AM, Florian Weimer <fweimer@redhat.com> wrote:
On 05/30/2018 04:49 PM, H.J. Lu wrote:

diff --git a/sysdeps/i386/nptl/tls.h b/sysdeps/i386/nptl/tls.h
index 6c36e58e9c..afb71ce431 100644
--- a/sysdeps/i386/nptl/tls.h
+++ b/sysdeps/i386/nptl/tls.h
@@ -43,11 +43,16 @@ typedef struct
     int gscope_flag;
     int __glibc_reserved1;
     /* Reservation of some values for the TM ABI.  */
-  void *__private_tm[4];
+  void *__private_tm[3];
     /* GCC split stack support.  */
     void *__private_ss;
+  void *__glibc_reserved2;
   } tcbhead_t;


What's the state of TM in GCC?  Has it already been removed?

libitm has its own issue:

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85988

Fortunately, only the first 2 elements in __private_tm are used by
libitm.

Looks like the reuse of the TM fields was actually deliberate:

  <https://sourceware.org/bugzilla/show_bug.cgi?id=10686>

But the offsets are still wrong.

The question still remains whether we still need libitm.

Thanks,
Florian


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]