mirror of git://git.musl-libc.org/musl
fix sysvipc structures on powerpc
these have been wrong for a long time and were never detected or corrected. powerpc needs some gratuitous extra padding/reserved slots in ipc_perm, big-endian ordering for the padding of time_t slots that was intended by the kernel folks to allow a transition to 64-bit time_t, and some minor gratuitous reordering of struct members.
This commit is contained in:
parent
f6e2f7e13f
commit
ad66ae93d0
|
@ -7,8 +7,9 @@ struct ipc_perm
|
|||
gid_t cgid;
|
||||
mode_t mode;
|
||||
int __ipc_perm_seq;
|
||||
long __pad1;
|
||||
long __pad2;
|
||||
int __pad1;
|
||||
long long __pad2;
|
||||
long long __pad3;
|
||||
};
|
||||
|
||||
#define IPC_64 0x100
|
||||
|
|
|
@ -1,12 +1,12 @@
|
|||
struct msqid_ds
|
||||
{
|
||||
struct ipc_perm msg_perm;
|
||||
time_t msg_stime;
|
||||
int __unused1;
|
||||
time_t msg_rtime;
|
||||
time_t msg_stime;
|
||||
int __unused2;
|
||||
time_t msg_ctime;
|
||||
time_t msg_rtime;
|
||||
int __unused3;
|
||||
time_t msg_ctime;
|
||||
unsigned long msg_cbytes;
|
||||
msgqnum_t msg_qnum;
|
||||
msglen_t msg_qbytes;
|
||||
|
|
|
@ -1,16 +1,10 @@
|
|||
struct semid_ds {
|
||||
struct ipc_perm sem_perm;
|
||||
int __unused1;
|
||||
time_t sem_otime;
|
||||
time_t __unused1;
|
||||
int __unused2;
|
||||
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;
|
||||
unsigned short __sem_nsems_pad, sem_nsems;
|
||||
long __unused3;
|
||||
long __unused4;
|
||||
};
|
||||
|
|
|
@ -3,13 +3,14 @@
|
|||
struct shmid_ds
|
||||
{
|
||||
struct ipc_perm shm_perm;
|
||||
size_t shm_segsz;
|
||||
time_t shm_atime;
|
||||
int __unused1;
|
||||
time_t shm_dtime;
|
||||
time_t shm_atime;
|
||||
int __unused2;
|
||||
time_t shm_ctime;
|
||||
time_t shm_dtime;
|
||||
int __unused3;
|
||||
time_t shm_ctime;
|
||||
int __unused4;
|
||||
size_t shm_segsz;
|
||||
pid_t shm_cpid;
|
||||
pid_t shm_lpid;
|
||||
unsigned long shm_nattch;
|
||||
|
|
Loading…
Reference in New Issue