1 #ifndef _SPARC_SEMBUF_H 2 #define _SPARC_SEMBUF_H 3 4 /* 5 * The semid64_ds structure for sparc architecture. 6 * Note extra padding because this structure is passed back and forth 7 * between kernel and user space. 8 * 9 * Pad space is left for: 10 * - 64-bit time_t to solve y2038 problem 11 * - 2 miscellaneous 32-bit values 12 */ 13 #if defined(__sparc__) && defined(__arch64__) 14 # define PADDING(x) 15 #else 16 # define PADDING(x) unsigned int x; 17 #endif 18 19 struct semid64_ds { 20 struct ipc64_perm sem_perm; /* permissions .. see ipc.h */ 21 PADDING(__pad1) 22 __kernel_time_t sem_otime; /* last semop time */ 23 PADDING(__pad2) 24 __kernel_time_t sem_ctime; /* last change time */ 25 unsigned long sem_nsems; /* no. of semaphores in array */ 26 unsigned long __unused1; 27 unsigned long __unused2; 28 }; 29 #undef PADDING 30 31 #endif /* _SPARC64_SEMBUF_H */ 32