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