diff options
Diffstat (limited to 'libc/sysdeps/linux')
-rw-r--r-- | libc/sysdeps/linux/common/bits/sem.h | 27 |
1 files changed, 19 insertions, 8 deletions
diff --git a/libc/sysdeps/linux/common/bits/sem.h b/libc/sysdeps/linux/common/bits/sem.h index 06a256259..1c0836c6d 100644 --- a/libc/sysdeps/linux/common/bits/sem.h +++ b/libc/sysdeps/linux/common/bits/sem.h @@ -39,22 +39,33 @@ struct semid_ds { struct ipc_perm sem_perm; /* operation permission struct */ - +#if defined(__UCLIBC_USE_TIME64__) unsigned long int __sem_otime_internal_1; unsigned long int __sem_otime_internal_2; +#else + __time_t sem_otime; /* last semop() time */ +#endif +#if (__WORDSIZE == 32 && !defined(__arm__) && !defined(__or1k__) && !defined(__xtensa__)) || \ + ((defined(__arm__) || defined(__or1k__) || defined(__xtensa__)) && !defined(__UCLIBC_USE_TIME64__)) + unsigned long int __uclibc_unused1; +#endif +#if defined(__UCLIBC_USE_TIME64__) unsigned long int __sem_ctime_internal_1; unsigned long int __sem_ctime_internal_2; -#if __BYTE_ORDER__ == __ORDER_LITTLE_ENDIAN__ - unsigned short int sem_nsems; /* number of semaphores in set */ - char __paddind[sizeof(long int) - sizeof(short int)]; #else - char __padding[sizeof(long int) - sizeof(short int)]; - unsigned short int sem_nsems; /* number of semaphores in set */ + __time_t sem_ctime; /* last time changed by semctl() */ #endif - unsigned long int __uclibc_unused3; - unsigned long int __uclibc_unused4; +#if (__WORDSIZE == 32 && !defined(__arm__) && !defined(__or1k__) && !defined(__xtensa__)) || \ + ((defined(__arm__) || defined(__or1k__) || defined(__xtensa__)) && !defined(__UCLIBC_USE_TIME64__)) + unsigned long int __uclibc_unused2; +#endif + unsigned long int sem_nsems; /* number of semaphores in set */ +#if defined(__UCLIBC_USE_TIME64__) __time_t sem_otime; /* last semop() time */ __time_t sem_ctime; /* last time changed by semctl() */ +#endif + unsigned long int __uclibc_unused3; + unsigned long int __uclibc_unused4; }; /* The user should define a union like the following to use it for arguments |