1a37c8875a764b4decf941859f4a2c63e1e86c8fajdl@freescale.com#ifndef _ASM_POWERPC_SHMBUF_H 2a37c8875a764b4decf941859f4a2c63e1e86c8fajdl@freescale.com#define _ASM_POWERPC_SHMBUF_H 31da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds 46b9269abd64c54f11dc4aaf162d2915fccae6c77Jon Loeliger/* 51da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds * This program is free software; you can redistribute it and/or 61da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds * modify it under the terms of the GNU General Public License 71da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds * as published by the Free Software Foundation; either version 81da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds * 2 of the License, or (at your option) any later version. 91da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds */ 101da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds 116b9269abd64c54f11dc4aaf162d2915fccae6c77Jon Loeliger/* 126b9269abd64c54f11dc4aaf162d2915fccae6c77Jon Loeliger * The shmid64_ds structure for PPC architecture. 136b9269abd64c54f11dc4aaf162d2915fccae6c77Jon Loeliger * 146b9269abd64c54f11dc4aaf162d2915fccae6c77Jon Loeliger * Note extra padding because this structure is passed back and forth 156b9269abd64c54f11dc4aaf162d2915fccae6c77Jon Loeliger * between kernel and user space. 166b9269abd64c54f11dc4aaf162d2915fccae6c77Jon Loeliger * 176b9269abd64c54f11dc4aaf162d2915fccae6c77Jon Loeliger * Pad space is left for: 186b9269abd64c54f11dc4aaf162d2915fccae6c77Jon Loeliger * - 64-bit time_t to solve y2038 problem 196b9269abd64c54f11dc4aaf162d2915fccae6c77Jon Loeliger * - 2 miscellaneous 32-bit values 206b9269abd64c54f11dc4aaf162d2915fccae6c77Jon Loeliger */ 216b9269abd64c54f11dc4aaf162d2915fccae6c77Jon Loeliger 221da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvaldsstruct shmid64_ds { 231da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds struct ipc64_perm shm_perm; /* operation perms */ 24f9526785d8a03fd0e21f9cfc951adc03bde1c395jdl@freescale.com#ifndef __powerpc64__ 256b9269abd64c54f11dc4aaf162d2915fccae6c77Jon Loeliger unsigned long __unused1; 266b9269abd64c54f11dc4aaf162d2915fccae6c77Jon Loeliger#endif 271da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds __kernel_time_t shm_atime; /* last attach time */ 28f9526785d8a03fd0e21f9cfc951adc03bde1c395jdl@freescale.com#ifndef __powerpc64__ 296b9269abd64c54f11dc4aaf162d2915fccae6c77Jon Loeliger unsigned long __unused2; 306b9269abd64c54f11dc4aaf162d2915fccae6c77Jon Loeliger#endif 311da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds __kernel_time_t shm_dtime; /* last detach time */ 32f9526785d8a03fd0e21f9cfc951adc03bde1c395jdl@freescale.com#ifndef __powerpc64__ 336b9269abd64c54f11dc4aaf162d2915fccae6c77Jon Loeliger unsigned long __unused3; 346b9269abd64c54f11dc4aaf162d2915fccae6c77Jon Loeliger#endif 351da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds __kernel_time_t shm_ctime; /* last change time */ 36f9526785d8a03fd0e21f9cfc951adc03bde1c395jdl@freescale.com#ifndef __powerpc64__ 376b9269abd64c54f11dc4aaf162d2915fccae6c77Jon Loeliger unsigned long __unused4; 386b9269abd64c54f11dc4aaf162d2915fccae6c77Jon Loeliger#endif 391da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds size_t shm_segsz; /* size of segment (bytes) */ 401da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds __kernel_pid_t shm_cpid; /* pid of creator */ 411da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds __kernel_pid_t shm_lpid; /* pid of last operator */ 421da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds unsigned long shm_nattch; /* no. of current attaches */ 436b9269abd64c54f11dc4aaf162d2915fccae6c77Jon Loeliger unsigned long __unused5; 446b9269abd64c54f11dc4aaf162d2915fccae6c77Jon Loeliger unsigned long __unused6; 451da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds}; 461da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds 471da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvaldsstruct shminfo64 { 481da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds unsigned long shmmax; 491da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds unsigned long shmmin; 501da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds unsigned long shmmni; 511da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds unsigned long shmseg; 521da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds unsigned long shmall; 531da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds unsigned long __unused1; 541da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds unsigned long __unused2; 551da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds unsigned long __unused3; 561da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds unsigned long __unused4; 571da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds}; 581da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds 59a37c8875a764b4decf941859f4a2c63e1e86c8fajdl@freescale.com#endif /* _ASM_POWERPC_SHMBUF_H */ 60