1*8d67ca89SAndroid Build Coastguard Worker /* 2*8d67ca89SAndroid Build Coastguard Worker * This file is auto-generated. Modifications will be lost. 3*8d67ca89SAndroid Build Coastguard Worker * 4*8d67ca89SAndroid Build Coastguard Worker * See https://android.googlesource.com/platform/bionic/+/master/libc/kernel/ 5*8d67ca89SAndroid Build Coastguard Worker * for more information. 6*8d67ca89SAndroid Build Coastguard Worker */ 7*8d67ca89SAndroid Build Coastguard Worker #ifndef _UAPI_LINUX_SHM_H_ 8*8d67ca89SAndroid Build Coastguard Worker #define _UAPI_LINUX_SHM_H_ 9*8d67ca89SAndroid Build Coastguard Worker #include <linux/ipc.h> 10*8d67ca89SAndroid Build Coastguard Worker #include <linux/errno.h> 11*8d67ca89SAndroid Build Coastguard Worker #include <asm-generic/hugetlb_encode.h> 12*8d67ca89SAndroid Build Coastguard Worker #include <unistd.h> 13*8d67ca89SAndroid Build Coastguard Worker #define SHMMIN 1 14*8d67ca89SAndroid Build Coastguard Worker #define SHMMNI 4096 15*8d67ca89SAndroid Build Coastguard Worker #define SHMMAX (ULONG_MAX - (1UL << 24)) 16*8d67ca89SAndroid Build Coastguard Worker #define SHMALL (ULONG_MAX - (1UL << 24)) 17*8d67ca89SAndroid Build Coastguard Worker #define SHMSEG SHMMNI 18*8d67ca89SAndroid Build Coastguard Worker struct __kernel_legacy_shmid_ds { 19*8d67ca89SAndroid Build Coastguard Worker struct __kernel_legacy_ipc_perm shm_perm; 20*8d67ca89SAndroid Build Coastguard Worker int shm_segsz; 21*8d67ca89SAndroid Build Coastguard Worker __kernel_old_time_t shm_atime; 22*8d67ca89SAndroid Build Coastguard Worker __kernel_old_time_t shm_dtime; 23*8d67ca89SAndroid Build Coastguard Worker __kernel_old_time_t shm_ctime; 24*8d67ca89SAndroid Build Coastguard Worker __kernel_ipc_pid_t shm_cpid; 25*8d67ca89SAndroid Build Coastguard Worker __kernel_ipc_pid_t shm_lpid; 26*8d67ca89SAndroid Build Coastguard Worker unsigned short shm_nattch; 27*8d67ca89SAndroid Build Coastguard Worker unsigned short shm_unused; 28*8d67ca89SAndroid Build Coastguard Worker void * shm_unused2; 29*8d67ca89SAndroid Build Coastguard Worker void * shm_unused3; 30*8d67ca89SAndroid Build Coastguard Worker }; 31*8d67ca89SAndroid Build Coastguard Worker #include <asm/shmbuf.h> 32*8d67ca89SAndroid Build Coastguard Worker #define SHM_R 0400 33*8d67ca89SAndroid Build Coastguard Worker #define SHM_W 0200 34*8d67ca89SAndroid Build Coastguard Worker #define SHM_HUGETLB 04000 35*8d67ca89SAndroid Build Coastguard Worker #define SHM_NORESERVE 010000 36*8d67ca89SAndroid Build Coastguard Worker #define SHM_HUGE_SHIFT HUGETLB_FLAG_ENCODE_SHIFT 37*8d67ca89SAndroid Build Coastguard Worker #define SHM_HUGE_MASK HUGETLB_FLAG_ENCODE_MASK 38*8d67ca89SAndroid Build Coastguard Worker #define SHM_HUGE_64KB HUGETLB_FLAG_ENCODE_64KB 39*8d67ca89SAndroid Build Coastguard Worker #define SHM_HUGE_512KB HUGETLB_FLAG_ENCODE_512KB 40*8d67ca89SAndroid Build Coastguard Worker #define SHM_HUGE_1MB HUGETLB_FLAG_ENCODE_1MB 41*8d67ca89SAndroid Build Coastguard Worker #define SHM_HUGE_2MB HUGETLB_FLAG_ENCODE_2MB 42*8d67ca89SAndroid Build Coastguard Worker #define SHM_HUGE_8MB HUGETLB_FLAG_ENCODE_8MB 43*8d67ca89SAndroid Build Coastguard Worker #define SHM_HUGE_16MB HUGETLB_FLAG_ENCODE_16MB 44*8d67ca89SAndroid Build Coastguard Worker #define SHM_HUGE_32MB HUGETLB_FLAG_ENCODE_32MB 45*8d67ca89SAndroid Build Coastguard Worker #define SHM_HUGE_256MB HUGETLB_FLAG_ENCODE_256MB 46*8d67ca89SAndroid Build Coastguard Worker #define SHM_HUGE_512MB HUGETLB_FLAG_ENCODE_512MB 47*8d67ca89SAndroid Build Coastguard Worker #define SHM_HUGE_1GB HUGETLB_FLAG_ENCODE_1GB 48*8d67ca89SAndroid Build Coastguard Worker #define SHM_HUGE_2GB HUGETLB_FLAG_ENCODE_2GB 49*8d67ca89SAndroid Build Coastguard Worker #define SHM_HUGE_16GB HUGETLB_FLAG_ENCODE_16GB 50*8d67ca89SAndroid Build Coastguard Worker #define SHM_RDONLY 010000 51*8d67ca89SAndroid Build Coastguard Worker #define SHM_RND 020000 52*8d67ca89SAndroid Build Coastguard Worker #define SHM_REMAP 040000 53*8d67ca89SAndroid Build Coastguard Worker #define SHM_EXEC 0100000 54*8d67ca89SAndroid Build Coastguard Worker #define SHM_LOCK 11 55*8d67ca89SAndroid Build Coastguard Worker #define SHM_UNLOCK 12 56*8d67ca89SAndroid Build Coastguard Worker #define SHM_STAT 13 57*8d67ca89SAndroid Build Coastguard Worker #define SHM_INFO 14 58*8d67ca89SAndroid Build Coastguard Worker #define SHM_STAT_ANY 15 59*8d67ca89SAndroid Build Coastguard Worker struct shminfo { 60*8d67ca89SAndroid Build Coastguard Worker int shmmax; 61*8d67ca89SAndroid Build Coastguard Worker int shmmin; 62*8d67ca89SAndroid Build Coastguard Worker int shmmni; 63*8d67ca89SAndroid Build Coastguard Worker int shmseg; 64*8d67ca89SAndroid Build Coastguard Worker int shmall; 65*8d67ca89SAndroid Build Coastguard Worker }; 66*8d67ca89SAndroid Build Coastguard Worker struct shm_info { 67*8d67ca89SAndroid Build Coastguard Worker int used_ids; 68*8d67ca89SAndroid Build Coastguard Worker __kernel_ulong_t shm_tot; 69*8d67ca89SAndroid Build Coastguard Worker __kernel_ulong_t shm_rss; 70*8d67ca89SAndroid Build Coastguard Worker __kernel_ulong_t shm_swp; 71*8d67ca89SAndroid Build Coastguard Worker __kernel_ulong_t swap_attempts; 72*8d67ca89SAndroid Build Coastguard Worker __kernel_ulong_t swap_successes; 73*8d67ca89SAndroid Build Coastguard Worker }; 74*8d67ca89SAndroid Build Coastguard Worker #endif 75