about summary refs log tree commit diff
path: root/arch/x32/bits
diff options
context:
space:
mode:
authorRich Felker <dalias@aerifal.cx>2014-03-11 15:27:13 -0400
committerRich Felker <dalias@aerifal.cx>2014-03-11 15:27:13 -0400
commitf6e2f7e13f0edb1bb1d94e6ad4bf44abffd048d1 (patch)
tree03255e64909707df47a7221b01a81eedd84544d0 /arch/x32/bits
parent6739b13a172aad9c01572c04cadacc99c7041811 (diff)
downloadmusl-f6e2f7e13f0edb1bb1d94e6ad4bf44abffd048d1.tar.gz
musl-f6e2f7e13f0edb1bb1d94e6ad4bf44abffd048d1.tar.xz
musl-f6e2f7e13f0edb1bb1d94e6ad4bf44abffd048d1.zip
move struct semid_ds to from shared sys/sem.h to bits
the definition was found to be incorrect at least for powerpc, and
fixing this cleanly requires making the definition arch-specific. this
will allow cleaning up the definition for other archs to make it more
specific, and reversing some of the ugliness (time_t hacks) introduced
with the x32 port.

this first commit simply copies the existing definition to each arch
without any changes. this is intentional, to make it easier to review
changes made on a per-arch basis.
Diffstat (limited to 'arch/x32/bits')
-rw-r--r--arch/x32/bits/sem.h16
1 files changed, 16 insertions, 0 deletions
diff --git a/arch/x32/bits/sem.h b/arch/x32/bits/sem.h
new file mode 100644
index 00000000..c629b81e
--- /dev/null
+++ b/arch/x32/bits/sem.h
@@ -0,0 +1,16 @@
+struct semid_ds {
+	struct ipc_perm sem_perm;
+	time_t sem_otime;
+	time_t __unused1;
+	time_t sem_ctime;
+	time_t __unused2;
+#if __BYTE_ORDER == __LITTLE_ENDIAN
+	unsigned short sem_nsems;
+	char __sem_nsems_pad[sizeof(time_t)-sizeof(short)];
+#else
+	char __sem_nsems_pad[sizeof(time_t)-sizeof(short)];
+	unsigned short sem_nsems;
+#endif
+	time_t __unused3;
+	time_t __unused4;
+};