11da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds#ifndef _ASM_SHMBUF_H
21da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds#define _ASM_SHMBUF_H
31da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds
41da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds/*
51da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds * The shmid64_ds structure for the MIPS architecture.
61da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds * Note extra padding because this structure is passed back and forth
71da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds * between kernel and user space.
81da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds *
91da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds * Pad space is left for:
101da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds * - 2 miscellaneous 32-bit rsp. 64-bit values
111da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds */
121da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds
131da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvaldsstruct shmid64_ds {
141da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds	struct ipc64_perm	shm_perm;	/* operation perms */
151da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds	size_t			shm_segsz;	/* size of segment (bytes) */
161da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds	__kernel_time_t		shm_atime;	/* last attach time */
171da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds	__kernel_time_t		shm_dtime;	/* last detach time */
181da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds	__kernel_time_t		shm_ctime;	/* last change time */
191da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds	__kernel_pid_t		shm_cpid;	/* pid of creator */
201da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds	__kernel_pid_t		shm_lpid;	/* pid of last operator */
211da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds	unsigned long		shm_nattch;	/* no. of current attaches */
221da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds	unsigned long		__unused1;
231da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds	unsigned long		__unused2;
241da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds};
251da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds
261da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvaldsstruct shminfo64 {
271da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds	unsigned long	shmmax;
281da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds	unsigned long	shmmin;
291da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds	unsigned long	shmmni;
301da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds	unsigned long	shmseg;
311da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds	unsigned long	shmall;
321da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds	unsigned long	__unused1;
331da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds	unsigned long	__unused2;
341da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds	unsigned long	__unused3;
351da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds	unsigned long	__unused4;
361da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds};
371da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds
381da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds#endif /* _ASM_SHMBUF_H */
39