X-Git-Url: https://git.kernel.dk/?p=fio.git;a=blobdiff_plain;f=os%2Fos-android.h;h=acb19a8adea70d9c150a4554a83d1bcd1ee7e6f9;hp=6c3e0985b22fc5896e21d42458f02ff4b2be444c;hb=68bf62a07c0d00c97a0600ce9664b92378a95a91;hpb=29ac257cb18a38c20f970bd02f2bfb3a027309d5 diff --git a/os/os-android.h b/os/os-android.h index 6c3e0985..acb19a8a 100644 --- a/os/os-android.h +++ b/os/os-android.h @@ -59,19 +59,17 @@ #ifndef CONFIG_NO_SHM /* - * The Android NDK doesn't currently export , so define the - * necessary stuff here. + * Bionic doesn't support SysV shared memeory, so implement it using ashmem */ - -#include -#define SHM_HUGETLB 04000 - #include #include +#include +#define shmid_ds shmid64_ds +#define SHM_HUGETLB 04000 #define ASHMEM_DEVICE "/dev/ashmem" -static inline int shmctl (int __shmid, int __cmd, struct shmid_ds *__buf) +static inline int shmctl(int __shmid, int __cmd, struct shmid_ds *__buf) { int ret=0; if (__cmd == IPC_RMID) @@ -84,7 +82,7 @@ static inline int shmctl (int __shmid, int __cmd, struct shmid_ds *__buf) return ret; } -static inline int shmget (key_t __key, size_t __size, int __shmflg) +static inline int shmget(key_t __key, size_t __size, int __shmflg) { int fd,ret; char keybuf[11]; @@ -109,7 +107,7 @@ error: return ret; } -static inline void *shmat (int __shmid, const void *__shmaddr, int __shmflg) +static inline void *shmat(int __shmid, const void *__shmaddr, int __shmflg) { size_t *ptr, size = ioctl(__shmid, ASHMEM_GET_SIZE, NULL); ptr = mmap(NULL, size + sizeof(size_t), PROT_READ | PROT_WRITE, MAP_SHARED, __shmid, 0);