From: Florian Weimer Date: Mon, 7 Nov 2016 13:38:12 +0000 (+0100) Subject: nptl: Document the reason why __kind in pthread_mutex_t is part of the ABI X-Git-Tag: glibc-2.25~334 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=c74940f2a76ae112279871cdc0382c127a43f9de;p=thirdparty%2Fglibc.git nptl: Document the reason why __kind in pthread_mutex_t is part of the ABI --- diff --git a/ChangeLog b/ChangeLog index 1ac8d2c2dd0..49396f59e9a 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 13984a718df..c376e64dd78 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 afb5392c8f6..645207bf41d 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 540802a70c1..d0c1d584392 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 f2e6dacf989..0e8388374fb 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 d8faa7a000b..d195492f350 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 9e9e307cf98..2a1ca0a191b 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 68ed94b145f..c7533a8e326 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 76076d009a7..ee8b7ba762b 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 40d10fea590..21d13bd7e70 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 13fbd7379a0..5354f78676a 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 d45cb61277e..e781a258aa0 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 7d6865066a0..b14b1c6f5e9 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 1a1779b5d41..b7af0380e97 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 345e79ae727..d230ac96786 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 16b8f4fbb1c..c641a405e38 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;