]> git.kernelconcepts.de Git - karo-tx-linux.git/blob - include/asm-powerpc/shmbuf.h
powerpc: implement atomic64_t on ppc64
[karo-tx-linux.git] / include / asm-powerpc / shmbuf.h
1 #ifndef _ASM_POWERPC_SHMBUF_H
2 #define _ASM_POWERPC_SHMBUF_H
3
4 /*
5  * This program is free software; you can redistribute it and/or
6  * modify it under the terms of the GNU General Public License
7  * as published by the Free Software Foundation; either version
8  * 2 of the License, or (at your option) any later version.
9  */
10
11 /*
12  * The shmid64_ds structure for PPC architecture.
13  *
14  * Note extra padding because this structure is passed back and forth
15  * between kernel and user space.
16  *
17  * Pad space is left for:
18  * - 64-bit time_t to solve y2038 problem
19  * - 2 miscellaneous 32-bit values
20  */
21
22 struct shmid64_ds {
23         struct ipc64_perm       shm_perm;       /* operation perms */
24 #ifndef __powerpc64__
25         unsigned long           __unused1;
26 #endif
27         __kernel_time_t         shm_atime;      /* last attach time */
28 #ifndef __powerpc64__
29         unsigned long           __unused2;
30 #endif
31         __kernel_time_t         shm_dtime;      /* last detach time */
32 #ifndef __powerpc64__
33         unsigned long           __unused3;
34 #endif
35         __kernel_time_t         shm_ctime;      /* last change time */
36 #ifndef __powerpc64__
37         unsigned long           __unused4;
38 #endif
39         size_t                  shm_segsz;      /* size of segment (bytes) */
40         __kernel_pid_t          shm_cpid;       /* pid of creator */
41         __kernel_pid_t          shm_lpid;       /* pid of last operator */
42         unsigned long           shm_nattch;     /* no. of current attaches */
43         unsigned long           __unused5;
44         unsigned long           __unused6;
45 };
46
47 struct shminfo64 {
48         unsigned long   shmmax;
49         unsigned long   shmmin;
50         unsigned long   shmmni;
51         unsigned long   shmseg;
52         unsigned long   shmall;
53         unsigned long   __unused1;
54         unsigned long   __unused2;
55         unsigned long   __unused3;
56         unsigned long   __unused4;
57 };
58
59 #endif  /* _ASM_POWERPC_SHMBUF_H */