Commit | Line | Data |
---|---|---|
1da177e4 LT |
1 | #ifndef _SPARC_SEMBUF_H |
2 | #define _SPARC_SEMBUF_H | |
3 | ||
fcb07081 | 4 | /* |
1da177e4 LT |
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 | */ | |
fcb07081 SR |
13 | #if defined(__sparc__) && defined(__arch64__) |
14 | # define PADDING(x) | |
15 | #else | |
16 | # define PADDING(x) unsigned int x; | |
17 | #endif | |
1da177e4 LT |
18 | |
19 | struct semid64_ds { | |
20 | struct ipc64_perm sem_perm; /* permissions .. see ipc.h */ | |
fcb07081 | 21 | PADDING(__pad1) |
1da177e4 | 22 | __kernel_time_t sem_otime; /* last semop time */ |
fcb07081 | 23 | PADDING(__pad2) |
1da177e4 LT |
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 | }; | |
fcb07081 | 29 | #undef PADDING |
1da177e4 LT |
30 | |
31 | #endif /* _SPARC64_SEMBUF_H */ |