1 /* 2 * RISC-V specific structures for linux-user 3 * 4 * This is a copy of ../aarch64/target_structs.h atm. 5 * 6 */ 7 #ifndef TARGET_STRUCTS_H 8 #define TARGET_STRUCTS_H 9 10 struct target_ipc_perm { 11 abi_int __key; /* Key. */ 12 abi_uint uid; /* Owner's user ID. */ 13 abi_uint gid; /* Owner's group ID. */ 14 abi_uint cuid; /* Creator's user ID. */ 15 abi_uint cgid; /* Creator's group ID. */ 16 abi_ushort mode; /* Read/write permission. */ 17 abi_ushort __pad1; 18 abi_ushort __seq; /* Sequence number. */ 19 abi_ushort __pad2; 20 abi_ulong __unused1; 21 abi_ulong __unused2; 22 }; 23 24 struct target_shmid_ds { 25 struct target_ipc_perm shm_perm; /* operation permission struct */ 26 abi_long shm_segsz; /* size of segment in bytes */ 27 abi_ulong shm_atime; /* time of last shmat() */ 28 #if TARGET_ABI_BITS == 32 29 abi_ulong __unused1; 30 #endif 31 abi_ulong shm_dtime; /* time of last shmdt() */ 32 #if TARGET_ABI_BITS == 32 33 abi_ulong __unused2; 34 #endif 35 abi_ulong shm_ctime; /* time of last change by shmctl() */ 36 #if TARGET_ABI_BITS == 32 37 abi_ulong __unused3; 38 #endif 39 abi_int shm_cpid; /* pid of creator */ 40 abi_int shm_lpid; /* pid of last shmop */ 41 abi_ulong shm_nattch; /* number of current attaches */ 42 abi_ulong __unused4; 43 abi_ulong __unused5; 44 }; 45 46 #endif 47