Linux 6.10-rc2
[sfrench/cifs-2.6.git] / arch / parisc / include / uapi / asm / shmbuf.h
1 /* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
2 #ifndef _PARISC_SHMBUF_H
3 #define _PARISC_SHMBUF_H
4
5 #include <asm/bitsperlong.h>
6 #include <asm/ipcbuf.h>
7 #include <asm/posix_types.h>
8
9 /* 
10  * The shmid64_ds structure for parisc architecture.
11  * Note extra padding because this structure is passed back and forth
12  * between kernel and user space.
13  *
14  * Pad space is left for:
15  * - 2 miscellaneous 32-bit values
16  */
17
18 struct shmid64_ds {
19         struct ipc64_perm       shm_perm;       /* operation perms */
20 #if __BITS_PER_LONG == 64
21         long                    shm_atime;      /* last attach time */
22         long                    shm_dtime;      /* last detach time */
23         long                    shm_ctime;      /* last change time */
24 #else
25         unsigned long           shm_atime_high;
26         unsigned long           shm_atime;      /* last attach time */
27         unsigned long           shm_dtime_high;
28         unsigned long           shm_dtime;      /* last detach time */
29         unsigned long           shm_ctime_high;
30         unsigned long           shm_ctime;      /* last change time */
31         unsigned int            __pad4;
32 #endif
33         __kernel_size_t         shm_segsz;      /* size of segment (bytes) */
34         __kernel_pid_t          shm_cpid;       /* pid of creator */
35         __kernel_pid_t          shm_lpid;       /* pid of last operator */
36         unsigned long           shm_nattch;     /* no. of current attaches */
37         unsigned long           __unused1;
38         unsigned long           __unused2;
39 };
40
41 struct shminfo64 {
42         unsigned long   shmmax;
43         unsigned long   shmmin;
44         unsigned long   shmmni;
45         unsigned long   shmseg;
46         unsigned long   shmall;
47         unsigned long   __unused1;
48         unsigned long   __unused2;
49         unsigned long   __unused3;
50         unsigned long   __unused4;
51 };
52
53 #endif /* _PARISC_SHMBUF_H */