aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSergey Bugaev <bugaevc@gmail.com>2023-02-14 20:37:22 +0300
committerSamuel Thibault <samuel.thibault@ens-lyon.org>2023-02-27 23:12:36 +0100
commitaf0a16a86345ca1f26e956ef44e4b7240bf705cd (patch)
treec00b73d7ff5d955b476d9e8c01a1f45416be6c36
parent04a558e669801e3eeb32346209fe7a71bc72747f (diff)
downloadglibc-af0a16a86345ca1f26e956ef44e4b7240bf705cd.zip
glibc-af0a16a86345ca1f26e956ef44e4b7240bf705cd.tar.gz
glibc-af0a16a86345ca1f26e956ef44e4b7240bf705cd.tar.bz2
htl: Make pthread_mutex_t pointer-aligned
This is for future-proofing. On i386, it is 4-byte aligned anyway, but on x86_64, we want it 8-byte aligned, not 4-byte aligned. Signed-off-by: Sergey Bugaev <bugaevc@gmail.com> Message-Id: <20230214173722.428140-4-bugaevc@gmail.com>
-rw-r--r--sysdeps/mach/hurd/htl/bits/types/struct___pthread_mutex.h13
1 files changed, 8 insertions, 5 deletions
diff --git a/sysdeps/mach/hurd/htl/bits/types/struct___pthread_mutex.h b/sysdeps/mach/hurd/htl/bits/types/struct___pthread_mutex.h
index d7b239f..11caa87 100644
--- a/sysdeps/mach/hurd/htl/bits/types/struct___pthread_mutex.h
+++ b/sysdeps/mach/hurd/htl/bits/types/struct___pthread_mutex.h
@@ -30,20 +30,23 @@ struct __pthread_mutex
int __shpid;
int __type;
int __flags;
- unsigned int __reserved1;
- unsigned int __reserved2;
+ union
+ {
+ unsigned int __reserved[2];
+ void *__pointer_aligned;
+ };
};
/* Static mutex initializers. */
#define __PTHREAD_MUTEX_INITIALIZER \
- { 0, 0, 0, 0, __PTHREAD_MUTEX_TIMED, 0, 0, 0 }
+ { 0, 0, 0, 0, __PTHREAD_MUTEX_TIMED, 0, { { 0, 0 } } }
/* The +1 is to mantain binary compatibility with the old
* libpthread implementation. */
#define __PTHREAD_ERRORCHECK_MUTEX_INITIALIZER \
- { 0, 0, 0, 0, __PTHREAD_MUTEX_ERRORCHECK + 1, 0, 0, 0 }
+ { 0, 0, 0, 0, __PTHREAD_MUTEX_ERRORCHECK + 1, 0, { { 0, 0 } } }
#define __PTHREAD_RECURSIVE_MUTEX_INITIALIZER \
- { 0, 0, 0, 0, __PTHREAD_MUTEX_RECURSIVE + 1, 0, 0, 0 }
+ { 0, 0, 0, 0, __PTHREAD_MUTEX_RECURSIVE + 1, 0, { { 0, 0 } } }
#endif /* bits/types/struct___pthread_mutex.h */