blob: a7056db9326042d8b3439661104a221b30154544 [file] [log] [blame]
The Android Open Source Project1dc9e472009-03-03 19:28:35 -08001/****************************************************************************
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 Cheng4b29af02012-03-07 16:14:53 -080014
The Android Open Source Project1dc9e472009-03-03 19:28:35 -080015#include <linux/ipc.h>
16#include <linux/errno.h>
17#include <asm/page.h>
Ben Cheng4b29af02012-03-07 16:14:53 -080018
The Android Open Source Project1dc9e472009-03-03 19:28:35 -080019#define SHMMAX 0x2000000
20#define SHMMIN 1
21#define SHMMNI 4096
22#define SHMALL (SHMMAX/PAGE_SIZE*(SHMMNI/16))
23#define SHMSEG SHMMNI
Ben Cheng4b29af02012-03-07 16:14:53 -080024
The Android Open Source Project1dc9e472009-03-03 19:28:35 -080025#include <asm/shmparam.h>
Ben Cheng4b29af02012-03-07 16:14:53 -080026
The Android Open Source Project1dc9e472009-03-03 19:28:35 -080027struct 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 Cheng4b29af02012-03-07 16:14:53 -080040
The Android Open Source Project1dc9e472009-03-03 19:28:35 -080041#include <asm/shmbuf.h>
Ben Cheng4b29af02012-03-07 16:14:53 -080042
The Android Open Source Project1dc9e472009-03-03 19:28:35 -080043#define SHM_R 0400
44#define SHM_W 0200
Ben Cheng4b29af02012-03-07 16:14:53 -080045
The Android Open Source Project1dc9e472009-03-03 19:28:35 -080046#define SHM_RDONLY 010000
47#define SHM_RND 020000
48#define SHM_REMAP 040000
49#define SHM_EXEC 0100000
Ben Cheng4b29af02012-03-07 16:14:53 -080050
The Android Open Source Project1dc9e472009-03-03 19:28:35 -080051#define SHM_LOCK 11
52#define SHM_UNLOCK 12
Ben Cheng4b29af02012-03-07 16:14:53 -080053
The Android Open Source Project1dc9e472009-03-03 19:28:35 -080054#define SHM_STAT 13
55#define SHM_INFO 14
Ben Cheng4b29af02012-03-07 16:14:53 -080056
The Android Open Source Project1dc9e472009-03-03 19:28:35 -080057struct shminfo {
58 int shmmax;
59 int shmmin;
60 int shmmni;
61 int shmseg;
62 int shmall;
63};
Ben Cheng4b29af02012-03-07 16:14:53 -080064
The Android Open Source Project1dc9e472009-03-03 19:28:35 -080065struct 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 Cheng4b29af02012-03-07 16:14:53 -080073
The Android Open Source Project1dc9e472009-03-03 19:28:35 -080074#endif