Linux Audio

Check our new training course

Loading...
 1/* SPDX-License-Identifier: GPL-2.0+ WITH Linux-syscall-note */
 2#ifndef _ASM_POWERPC_SHMBUF_H
 3#define _ASM_POWERPC_SHMBUF_H
 4
 5/*
 6 * This program is free software; you can redistribute it and/or
 7 * modify it under the terms of the GNU General Public License
 8 * as published by the Free Software Foundation; either version
 9 * 2 of the License, or (at your option) any later version.
10 */
11
12/*
13 * The shmid64_ds structure for PPC architecture.
14 *
15 * Note extra padding because this structure is passed back and forth
16 * between kernel and user space.
17 *
18 * Pad space is left for:
19 * - 2 miscellaneous 32-bit values
20 */
21
22struct shmid64_ds {
23	struct ipc64_perm	shm_perm;	/* operation perms */
24#ifdef __powerpc64__
25	long		shm_atime;	/* last attach time */
26	long		shm_dtime;	/* last detach time */
27	long		shm_ctime;	/* last change time */
28#else
29	unsigned long		shm_atime_high;
30	unsigned long		shm_atime;	/* last attach time */
31	unsigned long		shm_dtime_high;
32	unsigned long		shm_dtime;	/* last detach time */
33	unsigned long		shm_ctime_high;
34	unsigned long		shm_ctime;	/* last change time */
35	unsigned long		__unused4;
36#endif
37	size_t			shm_segsz;	/* size of segment (bytes) */
38	__kernel_pid_t		shm_cpid;	/* pid of creator */
39	__kernel_pid_t		shm_lpid;	/* pid of last operator */
40	unsigned long		shm_nattch;	/* no. of current attaches */
41	unsigned long		__unused5;
42	unsigned long		__unused6;
43};
44
45struct shminfo64 {
46	unsigned long	shmmax;
47	unsigned long	shmmin;
48	unsigned long	shmmni;
49	unsigned long	shmseg;
50	unsigned long	shmall;
51	unsigned long	__unused1;
52	unsigned long	__unused2;
53	unsigned long	__unused3;
54	unsigned long	__unused4;
55};
56
57#endif	/* _ASM_POWERPC_SHMBUF_H */