Commit | Line | Data |
---|---|---|
1da177e4 LT |
1 | #ifndef _SPARC_SHMBUF_H |
2 | #define _SPARC_SHMBUF_H | |
3 | ||
4 | /* | |
5 | * The shmid64_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 | ||
2d141962 SR |
14 | #if defined(__sparc__) && defined(__arch64__) |
15 | # define PADDING(x) | |
16 | #else | |
17 | # define PADDING(x) unsigned int x; | |
18 | #endif | |
19 | ||
1da177e4 LT |
20 | struct shmid64_ds { |
21 | struct ipc64_perm shm_perm; /* operation perms */ | |
2d141962 | 22 | PADDING(__pad1) |
1da177e4 | 23 | __kernel_time_t shm_atime; /* last attach time */ |
2d141962 | 24 | PADDING(__pad2) |
1da177e4 | 25 | __kernel_time_t shm_dtime; /* last detach time */ |
2d141962 | 26 | PADDING(__pad3) |
1da177e4 LT |
27 | __kernel_time_t shm_ctime; /* last change time */ |
28 | size_t shm_segsz; /* size of segment (bytes) */ | |
29 | __kernel_pid_t shm_cpid; /* pid of creator */ | |
30 | __kernel_pid_t shm_lpid; /* pid of last operator */ | |
31 | unsigned long shm_nattch; /* no. of current attaches */ | |
32 | unsigned long __unused1; | |
33 | unsigned long __unused2; | |
34 | }; | |
35 | ||
36 | struct shminfo64 { | |
37 | unsigned long shmmax; | |
38 | unsigned long shmmin; | |
39 | unsigned long shmmni; | |
40 | unsigned long shmseg; | |
41 | unsigned long shmall; | |
42 | unsigned long __unused1; | |
43 | unsigned long __unused2; | |
44 | unsigned long __unused3; | |
45 | unsigned long __unused4; | |
46 | }; | |
47 | ||
2d141962 SR |
48 | #undef PADDING |
49 | ||
1da177e4 | 50 | #endif /* _SPARC_SHMBUF_H */ |