This is the mail archive of the
libc-alpha@sourceware.org
mailing list for the glibc project.
[review v2] nptl: Add default pthreadtypes-arch.h
- From: "Adhemerval Zanella (Code Review)" <gerrit at gnutoolchain-gerrit dot osci dot io>
- To: libc-alpha at sourceware dot org
- Cc: Florian Weimer <fweimer at redhat dot com>
- Date: Wed, 20 Nov 2019 09:49:41 -0500
- Subject: [review v2] nptl: Add default pthreadtypes-arch.h
- Auto-submitted: auto-generated
- References: <gerrit.1573136666000.Ie0cd586258a2650f715c1af0c9fe4e7063b0409a@gnutoolchain-gerrit.osci.io>
- Reply-to: gnutoolchain-gerrit at osci dot io
Adhemerval Zanella has posted comments on this change.
Change URL: https://gnutoolchain-gerrit.osci.io/r/c/glibc/+/520
......................................................................
Patch Set 2:
(2 comments)
| --- /dev/null
| +++ /COMMIT_MSG
| @@ -1,0 +2,20 @@ Parent: 575d1eb7 (nptl: Add struct_rwlock.h)
| +Author: Adhemerval Zanella <adhemerval.zanella@linaro.org>
| +AuthorDate: 2017-11-14 19:10:13 -0200
| +Commit: Adhemerval Zanella <adhemerval.zanella@linaro.org>
| +CommitDate: 2019-11-08 16:43:07 -0300
| +
| +nptl: Add default pthreadtypes-arch.h
| +
| +This patch adds a default pthreadtypes-arch.h, the idea is to simpify
| +new ports inclusion and an override is required only if the architecture
| +adds some arch-specific extensions or requirement (such internal member
| +alignment).
PS2, Line 12:
Ack
| +
| +The default values on the new generic header are based on current
| +architecture define value and they are not optimal compared to current
| +code requirements as below.
| +
| + - On 64 bits __SIZEOF_PTHREAD_BARRIER_T is defined as 32 while is
| + sizeof (struct pthread_barrier) is 20 bytes.
| +
| + - On 32 bits __SIZEOF_PTHREAD_ATTR_T is defined as 36 while
| --- /dev/null
| +++ sysdeps/nptl/bits/pthreadtypes-arch.h
| @@ -1,0 +16,35 @@ /* Machine-specific pthread type layouts. Generic version.
| + You should have received a copy of the GNU Lesser General Public
| + License along with the GNU C Library; if not, see
| + <http://www.gnu.org/licenses/>. */
| +
| +#ifndef _BITS_PTHREADTYPES_ARCH_H
| +#define _BITS_PTHREADTYPES_ARCH_H 1
| +
| +#include <bits/wordsize.h>
| +
| +#if __WORDSIZE == 64
| +# define __SIZEOF_PTHREAD_ATTR_T 56
| +# define __SIZEOF_PTHREAD_MUTEX_T 40
| +# define __SIZEOF_PTHREAD_MUTEXATTR_T 4
| +# define __SIZEOF_PTHREAD_RWLOCK_T 56
| +# define __SIZEOF_PTHREAD_RWLOCKATTR_T 8
| +# define __SIZEOF_PTHREAD_BARRIER_T 32
| +# define __SIZEOF_PTHREAD_BARRIERATTR_T 4
| +# define __SIZEOF_PTHREAD_COND_T 48
| +# define __SIZEOF_PTHREAD_CONDATTR_T 4
| +#else
| +# define __SIZEOF_PTHREAD_ATTR_T 36
| +# define __SIZEOF_PTHREAD_MUTEX_T 24
| +# define __SIZEOF_PTHREAD_MUTEXATTR_T 4
| +# define __SIZEOF_PTHREAD_RWLOCK_T 32
| +# define __SIZEOF_PTHREAD_RWLOCKATTR_T 8
| +# define __SIZEOF_PTHREAD_BARRIER_T 20
| +# define __SIZEOF_PTHREAD_BARRIERATTR_T 4
| +# define __SIZEOF_PTHREAD_COND_T 48
| +# define __SIZEOF_PTHREAD_CONDATTR_T 4
| +#endif
PS2, Line 45:
Ack
| +
| +#define __LOCK_ALIGNMENT
| +#define __ONCE_ALIGNMENT
| +
| +#endif /* bits/pthreadtypes.h */
--
Gerrit-Project: glibc
Gerrit-Branch: master
Gerrit-Change-Id: Ie0cd586258a2650f715c1af0c9fe4e7063b0409a
Gerrit-Change-Number: 520
Gerrit-PatchSet: 2
Gerrit-Owner: Adhemerval Zanella <adhemerval.zanella@linaro.org>
Gerrit-Reviewer: Adhemerval Zanella <adhemerval.zanella@linaro.org>
Gerrit-CC: Florian Weimer <fweimer@redhat.com>
Gerrit-Comment-Date: Wed, 20 Nov 2019 14:49:41 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
Comment-In-Reply-To: Florian Weimer <fweimer@redhat.com>
Gerrit-MessageType: comment