X-Git-Url: http://nsz.repo.hu/git/?a=blobdiff_plain;ds=sidebyside;f=include%2Fsys%2Fshm.h;h=fd708cab1eb8c2e22eaf6bf300d8234e5002d770;hb=f897461d4fe72bb71854a6d0662de83008caccb7;hp=bca6ed62c33990269573f00ed5e4f51b08ebccac;hpb=969ddbc423238291d5c7982790bbe72720627ba4;p=musl diff --git a/include/sys/shm.h b/include/sys/shm.h index bca6ed62..fd708cab 100644 --- a/include/sys/shm.h +++ b/include/sys/shm.h @@ -14,6 +14,13 @@ extern "C" { #include #include + +#ifdef _GNU_SOURCE +#define __used_ids used_ids +#define __swap_attempts swap_attempts +#define __swap_successes swap_successes +#endif + #include #define SHM_R 0400 @@ -26,26 +33,30 @@ extern "C" { #define SHM_LOCK 11 #define SHM_UNLOCK 12 -#define SHM_STAT 13 +#define SHM_STAT (13 | (IPC_STAT & 0x100)) #define SHM_INFO 14 +#define SHM_STAT_ANY (15 | (IPC_STAT & 0x100)) #define SHM_DEST 01000 #define SHM_LOCKED 02000 #define SHM_HUGETLB 04000 #define SHM_NORESERVE 010000 -struct shminfo { - unsigned long shmmax, shmmin, shmmni, shmseg, shmall, __unused[4]; -}; +#define SHM_HUGE_SHIFT 26 +#define SHM_HUGE_MASK 0x3f +#define SHM_HUGE_64KB (16 << 26) +#define SHM_HUGE_512KB (19 << 26) +#define SHM_HUGE_1MB (20 << 26) +#define SHM_HUGE_2MB (21 << 26) +#define SHM_HUGE_8MB (23 << 26) +#define SHM_HUGE_16MB (24 << 26) +#define SHM_HUGE_32MB (25 << 26) +#define SHM_HUGE_256MB (28 << 26) +#define SHM_HUGE_512MB (29 << 26) +#define SHM_HUGE_1GB (30 << 26) +#define SHM_HUGE_2GB (31 << 26) +#define SHM_HUGE_16GB (34U << 26) -struct shm_info { - int used_ids; - unsigned long shm_tot, shm_rss, shm_swp; -#ifdef _GNU_SOURCE - unsigned long swap_attempts, swap_successes; -#else - unsigned long __reserved[2]; -#endif -}; +typedef unsigned long shmatt_t; void *shmat(int, const void *, int); int shmctl(int, int, struct shmid_ds *);