summaryrefslogtreecommitdiff
path: root/libc/sysdeps/linux/common/bits/sem.h
diff options
context:
space:
mode:
authorVladimir Murzin <vladimir.murzin@arm.com>2020-02-06 13:13:54 +0000
committerWaldemar Brodkorb <wbx@openadk.org>2020-02-07 14:37:15 +0100
commit28c3e6db471b00203133ca89c67f7507a9f7405d (patch)
tree6c591fe8b811ed286c98299344324dc97a1878be /libc/sysdeps/linux/common/bits/sem.h
parentd13a57c2eb09926815550c1b263cb0fad66cde3f (diff)
common/bits: Fix ipc_perm and semid_ds definitions for 64-bit arches
It fixes: FAIL sem got 1 expected 0 failed: incorrect sem_nsems! semget(IPC_CREAT) = 0 semctl(k) = 0 sem_nsems = 0 for aarch64. Signed-off-by: Vladimir Murzin <vladimir.murzin@arm.com>
Diffstat (limited to 'libc/sysdeps/linux/common/bits/sem.h')
-rw-r--r--libc/sysdeps/linux/common/bits/sem.h5
1 files changed, 5 insertions, 0 deletions
diff --git a/libc/sysdeps/linux/common/bits/sem.h b/libc/sysdeps/linux/common/bits/sem.h
index 501e0803b..3fb10d42f 100644
--- a/libc/sysdeps/linux/common/bits/sem.h
+++ b/libc/sysdeps/linux/common/bits/sem.h
@@ -20,6 +20,7 @@
#endif
#include <sys/types.h>
+#include <bits/wordsize.h>
/* Flags for `semop'. */
#define SEM_UNDO 0x1000 /* undo the operation on exit */
@@ -39,9 +40,13 @@ struct semid_ds
{
struct ipc_perm sem_perm; /* operation permission struct */
__time_t sem_otime; /* last semop() time */
+#if __WORDSIZE == 32
unsigned long int __unused1;
+#endif
__time_t sem_ctime; /* last time changed by semctl() */
+#if __WORDSIZE == 32
unsigned long int __unused2;
+#endif
unsigned long int sem_nsems; /* number of semaphores in set */
unsigned long int __unused3;
unsigned long int __unused4;