2005-06-24 09:01:26 +04:00
/*
* include / asm - xtensa / shmbuf . h
*
* The shmid64_ds structure for Xtensa architecture .
* Note extra padding because this structure is passed back and forth
* between kernel and user space .
*
* Pad space is left for :
* - 64 - bit time_t to solve y2038 problem
* - 2 miscellaneous 32 - bit values
*
* This file is subject to the terms and conditions of the GNU General Public
* License . See the file " COPYING " in the main directory of this archive
* for more details .
*
* Copyright ( C ) 2001 - 2005 Tensilica Inc .
*/
# ifndef _XTENSA_SHMBUF_H
# define _XTENSA_SHMBUF_H
2006-12-10 13:18:52 +03:00
# if defined (__XTENSA_EL__)
2005-06-24 09:01:26 +04:00
struct shmid64_ds {
struct ipc64_perm shm_perm ; /* operation perms */
size_t shm_segsz ; /* size of segment (bytes) */
__kernel_time_t shm_atime ; /* last attach time */
unsigned long __unused1 ;
__kernel_time_t shm_dtime ; /* last detach time */
unsigned long __unused2 ;
__kernel_time_t shm_ctime ; /* last change time */
unsigned long __unused3 ;
__kernel_pid_t shm_cpid ; /* pid of creator */
__kernel_pid_t shm_lpid ; /* pid of last operator */
unsigned long shm_nattch ; /* no. of current attaches */
unsigned long __unused4 ;
unsigned long __unused5 ;
} ;
2006-12-10 13:18:52 +03:00
# elif defined (__XTENSA_EB__)
struct shmid64_ds {
struct ipc64_perm shm_perm ; /* operation perms */
size_t shm_segsz ; /* size of segment (bytes) */
__kernel_time_t shm_atime ; /* last attach time */
unsigned long __unused1 ;
__kernel_time_t shm_dtime ; /* last detach time */
unsigned long __unused2 ;
__kernel_time_t shm_ctime ; /* last change time */
unsigned long __unused3 ;
__kernel_pid_t shm_cpid ; /* pid of creator */
__kernel_pid_t shm_lpid ; /* pid of last operator */
unsigned long shm_nattch ; /* no. of current attaches */
unsigned long __unused4 ;
unsigned long __unused5 ;
} ;
# else
# error endian order not defined
# endif
2005-06-24 09:01:26 +04:00
struct shminfo64 {
unsigned long shmmax ;
unsigned long shmmin ;
unsigned long shmmni ;
unsigned long shmseg ;
unsigned long shmall ;
unsigned long __unused1 ;
unsigned long __unused2 ;
unsigned long __unused3 ;
unsigned long __unused4 ;
} ;
# endif /* _XTENSA_SHMBUF_H */