From ecbf434213c0333d81706074e4d107ac45011635 Mon Sep 17 00:00:00 2001 From: Andreas Jaeger Date: Wed, 15 May 2013 20:20:54 +0200 Subject: [PATCH] Reserve new TLS field for x86 and x86_64 [BZ #10686] * sysdeps/x86_64/tls.h (struct tcbhead_t): Add __private_ss field. * sysdeps/i386/tls.h (struct tcbhead_t): Likewise. --- NEWS | 18 +++++++++--------- nptl/ChangeLog | 6 ++++++ nptl/sysdeps/i386/tls.h | 4 +++- nptl/sysdeps/x86_64/tls.h | 4 +++- 4 files changed, 21 insertions(+), 11 deletions(-) diff --git a/NEWS b/NEWS index f7bff07963..59aae3eb61 100644 --- a/NEWS +++ b/NEWS @@ -9,15 +9,15 @@ Version 2.18 * The following bugs are resolved with this release: - 2546, 2560, 5159, 6809, 10060, 10062, 10357, 11120, 11561, 12387, 12723, - 13550, 13889, 13951, 13988, 14142, 14176, 14200, 14280, 14293, 14317, - 14327, 14478, 14496, 14582, 14686, 14812, 14888, 14908, 14920, 14952, - 14964, 14981, 14982, 14985, 14994, 14996, 15000, 15003, 15006, 15007, - 15020, 15023, 15036, 15054, 15055, 15062, 15078, 15084, 15085, 15086, - 15160, 15214, 15221, 15232, 15234, 15283, 15285, 15287, 15304, 15305, - 15307, 15309, 15327, 15330, 15335, 15336, 15337, 15342, 15346, 15359, - 15361, 15366, 15380, 15394, 15395, 15405, 15406, 15409, 15416, 15418, - 15419, 15423, 15426, 15429, 15448. + 2546, 2560, 5159, 6809, 10060, 10062, 10357, 10686, 11120, 11561, 12387, + 12723, 13550, 13889, 13951, 13988, 14142, 14176, 14200, 14280, 14293, + 14317, 14327, 14478, 14496, 14582, 14686, 14812, 14888, 14908, 14920, + 14952, 14964, 14981, 14982, 14985, 14994, 14996, 15000, 15003, 15006, + 15007, 15020, 15023, 15036, 15054, 15055, 15062, 15078, 15084, 15085, + 15086, 15160, 15214, 15221, 15232, 15234, 15283, 15285, 15287, 15304, + 15305, 15307, 15309, 15327, 15330, 15335, 15336, 15337, 15342, 15346, + 15359, 15361, 15366, 15380, 15394, 15395, 15405, 15406, 15409, 15416, + 15418, 15419, 15423, 15426, 15429, 15448. * CVE-2013-0242 Buffer overrun in regexp matcher has been fixed (Bugzilla #15078). diff --git a/nptl/ChangeLog b/nptl/ChangeLog index 54ecd14ced..597b3bdee3 100644 --- a/nptl/ChangeLog +++ b/nptl/ChangeLog @@ -1,3 +1,9 @@ +2013-05-14 Andreas Jaeger + + [BZ #10686] + * sysdeps/x86_64/tls.h (struct tcbhead_t): Add __private_ss field. + * sysdeps/i386/tls.h (struct tcbhead_t): Likewise. + 2013-05-09 Andi Kleen * tst-mutex8.c (do_test): Check for ENABLE_PI. diff --git a/nptl/sysdeps/i386/tls.h b/nptl/sysdeps/i386/tls.h index 1405f60391..3d18b1de73 100644 --- a/nptl/sysdeps/i386/tls.h +++ b/nptl/sysdeps/i386/tls.h @@ -59,7 +59,9 @@ typedef struct int __unused1; #endif /* Reservation of some values for the TM ABI. */ - void *__private_tm[5]; + void *__private_tm[4]; + /* GCC split stack support. */ + void *__private_ss; } tcbhead_t; # define TLS_MULTIPLE_THREADS_IN_TCB 1 diff --git a/nptl/sysdeps/x86_64/tls.h b/nptl/sysdeps/x86_64/tls.h index 3d67dbc75a..61df1af2b0 100644 --- a/nptl/sysdeps/x86_64/tls.h +++ b/nptl/sysdeps/x86_64/tls.h @@ -69,7 +69,9 @@ typedef struct # endif int rtld_must_xmm_save; /* Reservation of some values for the TM ABI. */ - void *__private_tm[5]; + void *__private_tm[4]; + /* GCC split stack support. */ + void *__private_ss; long int __unused2; /* Have space for the post-AVX register size. */ __128bits rtld_savespace_sse[8][4] __attribute__ ((aligned (32)));