The Android Open Source Project | 1dc9e47 | 2009-03-03 19:28:35 -0800 | [diff] [blame] | 1 | /**************************************************************************** |
| 2 | **************************************************************************** |
| 3 | *** |
| 4 | *** This header was automatically generated from a Linux kernel header |
| 5 | *** of the same name, to make information necessary for userspace to |
| 6 | *** call into the kernel available to libc. It contains only constants, |
| 7 | *** structures, and macros generated from the original header, and thus, |
| 8 | *** contains no copyrightable information. |
| 9 | *** |
| 10 | **************************************************************************** |
| 11 | ****************************************************************************/ |
| 12 | #ifndef _LINUX_SHM_H_ |
| 13 | #define _LINUX_SHM_H_ |
Ben Cheng | 4b29af0 | 2012-03-07 16:14:53 -0800 | [diff] [blame] | 14 | |
The Android Open Source Project | 1dc9e47 | 2009-03-03 19:28:35 -0800 | [diff] [blame] | 15 | #include <linux/ipc.h> |
| 16 | #include <linux/errno.h> |
| 17 | #include <asm/page.h> |
Ben Cheng | 4b29af0 | 2012-03-07 16:14:53 -0800 | [diff] [blame] | 18 | |
The Android Open Source Project | 1dc9e47 | 2009-03-03 19:28:35 -0800 | [diff] [blame] | 19 | #define SHMMAX 0x2000000 |
| 20 | #define SHMMIN 1 |
| 21 | #define SHMMNI 4096 |
| 22 | #define SHMALL (SHMMAX/PAGE_SIZE*(SHMMNI/16)) |
| 23 | #define SHMSEG SHMMNI |
Ben Cheng | 4b29af0 | 2012-03-07 16:14:53 -0800 | [diff] [blame] | 24 | |
The Android Open Source Project | 1dc9e47 | 2009-03-03 19:28:35 -0800 | [diff] [blame] | 25 | #include <asm/shmparam.h> |
Ben Cheng | 4b29af0 | 2012-03-07 16:14:53 -0800 | [diff] [blame] | 26 | |
The Android Open Source Project | 1dc9e47 | 2009-03-03 19:28:35 -0800 | [diff] [blame] | 27 | struct shmid_ds { |
| 28 | struct ipc_perm shm_perm; |
| 29 | int shm_segsz; |
| 30 | __kernel_time_t shm_atime; |
| 31 | __kernel_time_t shm_dtime; |
| 32 | __kernel_time_t shm_ctime; |
| 33 | __kernel_ipc_pid_t shm_cpid; |
| 34 | __kernel_ipc_pid_t shm_lpid; |
| 35 | unsigned short shm_nattch; |
| 36 | unsigned short shm_unused; |
| 37 | void *shm_unused2; |
| 38 | void *shm_unused3; |
| 39 | }; |
Ben Cheng | 4b29af0 | 2012-03-07 16:14:53 -0800 | [diff] [blame] | 40 | |
The Android Open Source Project | 1dc9e47 | 2009-03-03 19:28:35 -0800 | [diff] [blame] | 41 | #include <asm/shmbuf.h> |
Ben Cheng | 4b29af0 | 2012-03-07 16:14:53 -0800 | [diff] [blame] | 42 | |
The Android Open Source Project | 1dc9e47 | 2009-03-03 19:28:35 -0800 | [diff] [blame] | 43 | #define SHM_R 0400 |
| 44 | #define SHM_W 0200 |
Ben Cheng | 4b29af0 | 2012-03-07 16:14:53 -0800 | [diff] [blame] | 45 | |
The Android Open Source Project | 1dc9e47 | 2009-03-03 19:28:35 -0800 | [diff] [blame] | 46 | #define SHM_RDONLY 010000 |
| 47 | #define SHM_RND 020000 |
| 48 | #define SHM_REMAP 040000 |
| 49 | #define SHM_EXEC 0100000 |
Ben Cheng | 4b29af0 | 2012-03-07 16:14:53 -0800 | [diff] [blame] | 50 | |
The Android Open Source Project | 1dc9e47 | 2009-03-03 19:28:35 -0800 | [diff] [blame] | 51 | #define SHM_LOCK 11 |
| 52 | #define SHM_UNLOCK 12 |
Ben Cheng | 4b29af0 | 2012-03-07 16:14:53 -0800 | [diff] [blame] | 53 | |
The Android Open Source Project | 1dc9e47 | 2009-03-03 19:28:35 -0800 | [diff] [blame] | 54 | #define SHM_STAT 13 |
| 55 | #define SHM_INFO 14 |
Ben Cheng | 4b29af0 | 2012-03-07 16:14:53 -0800 | [diff] [blame] | 56 | |
The Android Open Source Project | 1dc9e47 | 2009-03-03 19:28:35 -0800 | [diff] [blame] | 57 | struct shminfo { |
| 58 | int shmmax; |
| 59 | int shmmin; |
| 60 | int shmmni; |
| 61 | int shmseg; |
| 62 | int shmall; |
| 63 | }; |
Ben Cheng | 4b29af0 | 2012-03-07 16:14:53 -0800 | [diff] [blame] | 64 | |
The Android Open Source Project | 1dc9e47 | 2009-03-03 19:28:35 -0800 | [diff] [blame] | 65 | struct shm_info { |
| 66 | int used_ids; |
| 67 | unsigned long shm_tot; |
| 68 | unsigned long shm_rss; |
| 69 | unsigned long shm_swp; |
| 70 | unsigned long swap_attempts; |
| 71 | unsigned long swap_successes; |
| 72 | }; |
Ben Cheng | 4b29af0 | 2012-03-07 16:14:53 -0800 | [diff] [blame] | 73 | |
The Android Open Source Project | 1dc9e47 | 2009-03-03 19:28:35 -0800 | [diff] [blame] | 74 | #endif |