PowerPC64: Add __private_ss field to TCB header
authorUlrich Weigand <Ulrich.Weigand@de.ibm.com>
Wed, 4 Dec 2013 12:45:56 +0000 (06:45 -0600)
committerAdhemerval Zanella <azanella@linux.vnet.ibm.com>
Wed, 4 Dec 2013 13:41:38 +0000 (07:41 -0600)
The TCB header on Intel contains a field __private_ss that is used
to efficiently implement the -fsplit-stack GCC feature.

In order to prepare for a possible future implementation of that
feature on powerpc64, we'd like to reserve a similar field in
the TCB header as well.  (It would be good if this went in with
or before the ELFv2 patches to ensure that this field will be
available always in the ELFv2 environment.)

The field needs to be added at the front of tcbhead_t structure
to avoid changing the ABI; see the recent discussion when adding
the EBB fields.

ChangeLog
nptl/sysdeps/powerpc/tls.h

index 4ac3396..f56f9f6 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,7 @@
+2013-12-04  Ulrich Weigand  <Ulrich.Weigand@de.ibm.com>
+
+       * sysdeps/powerpc/tls.h (tcbhead_t): Add __private_ss field.
+
 2013-12-04  Alan Modra  <amodra@gmail.com>
 
        * elf/elf.h (R_PPC64_TLSGD, R_PPC64_TLSLD, R_PPC64_TOCSAVE): Define.
index 8e0ada6..c21c027 100644 (file)
@@ -61,6 +61,8 @@ typedef union dtv
    are private.  */
 typedef struct
 {
+  /* GCC split stack support.  */
+  void *__private_ss;
   /* Reservation for the Event-Based Branching ABI.  */
   uintptr_t ebb_handler;
   uintptr_t ebb_ctx_pointer;