From c74940f2a76ae112279871cdc0382c127a43f9de Mon Sep 17 00:00:00 2001 From: Florian Weimer Date: Mon, 7 Nov 2016 14:38:12 +0100 Subject: nptl: Document the reason why __kind in pthread_mutex_t is part of the ABI --- ChangeLog | 33 ++++++++++++++++++++++ sysdeps/aarch64/nptl/bits/pthreadtypes.h | 2 ++ sysdeps/arm/nptl/bits/pthreadtypes.h | 2 +- sysdeps/hppa/nptl/bits/pthreadtypes.h | 2 +- sysdeps/ia64/nptl/bits/pthreadtypes.h | 2 +- sysdeps/m68k/nptl/bits/pthreadtypes.h | 2 +- sysdeps/microblaze/nptl/bits/pthreadtypes.h | 2 +- sysdeps/mips/nptl/bits/pthreadtypes.h | 2 +- sysdeps/nios2/nptl/bits/pthreadtypes.h | 2 +- sysdeps/s390/nptl/bits/pthreadtypes.h | 2 +- sysdeps/sh/nptl/bits/pthreadtypes.h | 2 +- sysdeps/sparc/nptl/bits/pthreadtypes.h | 2 +- sysdeps/tile/nptl/bits/pthreadtypes.h | 2 +- sysdeps/unix/sysv/linux/alpha/bits/pthreadtypes.h | 2 +- .../unix/sysv/linux/powerpc/bits/pthreadtypes.h | 2 +- sysdeps/x86/bits/pthreadtypes.h | 2 +- 16 files changed, 49 insertions(+), 14 deletions(-) diff --git a/ChangeLog b/ChangeLog index 1ac8d2c2dd..49396f59e9 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,36 @@ +2016-11-07 Florian Weimer + + * sysdeps/aarch64/nptl/bits/pthreadtypes.h (struct __pthread_mutex_s): + Document ABI exposure of the __kind offset. + * sysdeps/arm/nptl/bits/pthreadtypes.h (struct __pthread_mutex_s): + Mention reason for the __kind offset exposure in the ABI. + * sysdeps/hppa/nptl/bits/pthreadtypes.h (struct __pthread_mutex_s): + Likewise. + * sysdeps/ia64/nptl/bits/pthreadtypes.h (struct __pthread_mutex_s): + Likewise. + * sysdeps/m68k/nptl/bits/pthreadtypes.h (struct __pthread_mutex_s): + Likewise. + * sysdeps/microblaze/nptl/bits/pthreadtypes.h + (struct __pthread_mutex_s): Likewise. + * sysdeps/mips/nptl/bits/pthreadtypes.h (struct __pthread_mutex_s): + Likewise. + * sysdeps/nios2/nptl/bits/pthreadtypes.h (struct __pthread_mutex_s): + Likewise. + * sysdeps/s390/nptl/bits/pthreadtypes.h (struct __pthread_mutex_s): + Likewise. + * sysdeps/sh/nptl/bits/pthreadtypes.h (struct __pthread_mutex_s): + Likewise. + * sysdeps/sparc/nptl/bits/pthreadtypes.h (struct __pthread_mutex_s): + Likewise. + * sysdeps/tile/nptl/bits/pthreadtypes.h (struct __pthread_mutex_s): + Likewise. + * sysdeps/unix/sysv/linux/alpha/bits/pthreadtypes.h + (struct __pthread_mutex_s): Likewise. + * sysdeps/unix/sysv/linux/powerpc/bits/pthreadtypes.h + (struct __pthread_mutex_s): Likewise. + * sysdeps/x86/bits/pthreadtypes.h (struct __pthread_mutex_s): + Likewise. + 2016-11-07 Steve Ellcey * test-skeleton.c: Document do_test usage. diff --git a/sysdeps/aarch64/nptl/bits/pthreadtypes.h b/sysdeps/aarch64/nptl/bits/pthreadtypes.h index 13984a718d..c376e64dd7 100644 --- a/sysdeps/aarch64/nptl/bits/pthreadtypes.h +++ b/sysdeps/aarch64/nptl/bits/pthreadtypes.h @@ -65,6 +65,8 @@ typedef union unsigned int __count; int __owner; unsigned int __nusers; + /* KIND must stay at this position in the structure to maintain + binary compatibility with static initializers. */ int __kind; int __spins; __pthread_list_t __list; diff --git a/sysdeps/arm/nptl/bits/pthreadtypes.h b/sysdeps/arm/nptl/bits/pthreadtypes.h index afb5392c8f..645207bf41 100644 --- a/sysdeps/arm/nptl/bits/pthreadtypes.h +++ b/sysdeps/arm/nptl/bits/pthreadtypes.h @@ -64,7 +64,7 @@ typedef union unsigned int __count; int __owner; /* KIND must stay at this position in the structure to maintain - binary compatibility. */ + binary compatibility with static initializers. */ int __kind; unsigned int __nusers; __extension__ union diff --git a/sysdeps/hppa/nptl/bits/pthreadtypes.h b/sysdeps/hppa/nptl/bits/pthreadtypes.h index 540802a70c..d0c1d58439 100644 --- a/sysdeps/hppa/nptl/bits/pthreadtypes.h +++ b/sysdeps/hppa/nptl/bits/pthreadtypes.h @@ -71,7 +71,7 @@ typedef union unsigned int __count; int __owner; /* KIND must stay at this position in the structure to maintain - binary compatibility. */ + binary compatibility with static initializers. */ int __kind; /* The old 4-word 16-byte aligned lock. This is initalized to all ones by the Linuxthreads PTHREAD_MUTEX_INITIALIZER. diff --git a/sysdeps/ia64/nptl/bits/pthreadtypes.h b/sysdeps/ia64/nptl/bits/pthreadtypes.h index f2e6dacf98..0e8388374f 100644 --- a/sysdeps/ia64/nptl/bits/pthreadtypes.h +++ b/sysdeps/ia64/nptl/bits/pthreadtypes.h @@ -64,7 +64,7 @@ typedef union int __owner; unsigned int __nusers; /* KIND must stay at this position in the structure to maintain - binary compatibility. */ + binary compatibility with static initializers. */ int __kind; int __spins; __pthread_list_t __list; diff --git a/sysdeps/m68k/nptl/bits/pthreadtypes.h b/sysdeps/m68k/nptl/bits/pthreadtypes.h index d8faa7a000..d195492f35 100644 --- a/sysdeps/m68k/nptl/bits/pthreadtypes.h +++ b/sysdeps/m68k/nptl/bits/pthreadtypes.h @@ -64,7 +64,7 @@ typedef union unsigned int __count; int __owner; /* KIND must stay at this position in the structure to maintain - binary compatibility. */ + binary compatibility with static initializers. */ int __kind; unsigned int __nusers; __extension__ union diff --git a/sysdeps/microblaze/nptl/bits/pthreadtypes.h b/sysdeps/microblaze/nptl/bits/pthreadtypes.h index 9e9e307cf9..2a1ca0a191 100644 --- a/sysdeps/microblaze/nptl/bits/pthreadtypes.h +++ b/sysdeps/microblaze/nptl/bits/pthreadtypes.h @@ -63,7 +63,7 @@ typedef union unsigned int __count; int __owner; /* KIND must stay at this position in the structure to maintain - binary compatibility. */ + binary compatibility with static initializers. */ int __kind; unsigned int __nusers; __extension__ union diff --git a/sysdeps/mips/nptl/bits/pthreadtypes.h b/sysdeps/mips/nptl/bits/pthreadtypes.h index 68ed94b145..c7533a8e32 100644 --- a/sysdeps/mips/nptl/bits/pthreadtypes.h +++ b/sysdeps/mips/nptl/bits/pthreadtypes.h @@ -87,7 +87,7 @@ typedef union unsigned int __nusers; #endif /* KIND must stay at this position in the structure to maintain - binary compatibility. */ + binary compatibility with static initializers. */ int __kind; #if _MIPS_SIM == _ABI64 int __spins; diff --git a/sysdeps/nios2/nptl/bits/pthreadtypes.h b/sysdeps/nios2/nptl/bits/pthreadtypes.h index 76076d009a..ee8b7ba762 100644 --- a/sysdeps/nios2/nptl/bits/pthreadtypes.h +++ b/sysdeps/nios2/nptl/bits/pthreadtypes.h @@ -64,7 +64,7 @@ typedef union unsigned int __count; int __owner; /* KIND must stay at this position in the structure to maintain - binary compatibility. */ + binary compatibility with static initializers. */ int __kind; unsigned int __nusers; __extension__ union diff --git a/sysdeps/s390/nptl/bits/pthreadtypes.h b/sysdeps/s390/nptl/bits/pthreadtypes.h index 40d10fea59..21d13bd7e7 100644 --- a/sysdeps/s390/nptl/bits/pthreadtypes.h +++ b/sysdeps/s390/nptl/bits/pthreadtypes.h @@ -86,7 +86,7 @@ typedef union unsigned int __nusers; #endif /* KIND must stay at this position in the structure to maintain - binary compatibility. */ + binary compatibility with static initializers. */ int __kind; #if __WORDSIZE == 64 # ifdef ENABLE_LOCK_ELISION diff --git a/sysdeps/sh/nptl/bits/pthreadtypes.h b/sysdeps/sh/nptl/bits/pthreadtypes.h index 13fbd7379a..5354f78676 100644 --- a/sysdeps/sh/nptl/bits/pthreadtypes.h +++ b/sysdeps/sh/nptl/bits/pthreadtypes.h @@ -64,7 +64,7 @@ typedef union unsigned int __count; int __owner; /* KIND must stay at this position in the structure to maintain - binary compatibility. */ + binary compatibility with static initializers. */ int __kind; unsigned int __nusers; __extension__ union diff --git a/sysdeps/sparc/nptl/bits/pthreadtypes.h b/sysdeps/sparc/nptl/bits/pthreadtypes.h index d45cb61277..e781a258aa 100644 --- a/sysdeps/sparc/nptl/bits/pthreadtypes.h +++ b/sysdeps/sparc/nptl/bits/pthreadtypes.h @@ -87,7 +87,7 @@ typedef union unsigned int __nusers; #endif /* KIND must stay at this position in the structure to maintain - binary compatibility. */ + binary compatibility with static initializers. */ int __kind; #if __WORDSIZE == 64 int __spins; diff --git a/sysdeps/tile/nptl/bits/pthreadtypes.h b/sysdeps/tile/nptl/bits/pthreadtypes.h index 7d6865066a..b14b1c6f5e 100644 --- a/sysdeps/tile/nptl/bits/pthreadtypes.h +++ b/sysdeps/tile/nptl/bits/pthreadtypes.h @@ -87,7 +87,7 @@ typedef union unsigned int __nusers; #endif /* KIND must stay at this position in the structure to maintain - binary compatibility. */ + binary compatibility with static initializers. */ int __kind; #if __WORDSIZE == 64 int __spins; diff --git a/sysdeps/unix/sysv/linux/alpha/bits/pthreadtypes.h b/sysdeps/unix/sysv/linux/alpha/bits/pthreadtypes.h index 1a1779b5d4..b7af0380e9 100644 --- a/sysdeps/unix/sysv/linux/alpha/bits/pthreadtypes.h +++ b/sysdeps/unix/sysv/linux/alpha/bits/pthreadtypes.h @@ -63,7 +63,7 @@ typedef union int __owner; unsigned int __nusers; /* KIND must stay at this position in the structure to maintain - binary compatibility. */ + binary compatibility with static initializers. */ int __kind; int __spins; __pthread_list_t __list; diff --git a/sysdeps/unix/sysv/linux/powerpc/bits/pthreadtypes.h b/sysdeps/unix/sysv/linux/powerpc/bits/pthreadtypes.h index 345e79ae72..d230ac9678 100644 --- a/sysdeps/unix/sysv/linux/powerpc/bits/pthreadtypes.h +++ b/sysdeps/unix/sysv/linux/powerpc/bits/pthreadtypes.h @@ -87,7 +87,7 @@ typedef union unsigned int __nusers; #endif /* KIND must stay at this position in the structure to maintain - binary compatibility. */ + binary compatibility with static initializers. */ int __kind; #if __WORDSIZE == 64 short __spins; diff --git a/sysdeps/x86/bits/pthreadtypes.h b/sysdeps/x86/bits/pthreadtypes.h index 16b8f4fbb1..c641a405e3 100644 --- a/sysdeps/x86/bits/pthreadtypes.h +++ b/sysdeps/x86/bits/pthreadtypes.h @@ -98,7 +98,7 @@ typedef union unsigned int __nusers; #endif /* KIND must stay at this position in the structure to maintain - binary compatibility. */ + binary compatibility with static initializers. */ int __kind; #ifdef __x86_64__ short __spins; -- cgit v1.2.3