target_structs.h 1.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  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 RISCV_TARGET_STRUCTS_H
  8. #define RISCV_TARGET_STRUCTS_H
  9. struct target_ipc_perm {
  10. abi_int __key; /* Key. */
  11. abi_uint uid; /* Owner's user ID. */
  12. abi_uint gid; /* Owner's group ID. */
  13. abi_uint cuid; /* Creator's user ID. */
  14. abi_uint cgid; /* Creator's group ID. */
  15. abi_ushort mode; /* Read/write permission. */
  16. abi_ushort __pad1;
  17. abi_ushort __seq; /* Sequence number. */
  18. abi_ushort __pad2;
  19. abi_ulong __unused1;
  20. abi_ulong __unused2;
  21. };
  22. struct target_shmid_ds {
  23. struct target_ipc_perm shm_perm; /* operation permission struct */
  24. abi_long shm_segsz; /* size of segment in bytes */
  25. abi_ulong shm_atime; /* time of last shmat() */
  26. #if TARGET_ABI_BITS == 32
  27. abi_ulong __unused1;
  28. #endif
  29. abi_ulong shm_dtime; /* time of last shmdt() */
  30. #if TARGET_ABI_BITS == 32
  31. abi_ulong __unused2;
  32. #endif
  33. abi_ulong shm_ctime; /* time of last change by shmctl() */
  34. #if TARGET_ABI_BITS == 32
  35. abi_ulong __unused3;
  36. #endif
  37. abi_int shm_cpid; /* pid of creator */
  38. abi_int shm_lpid; /* pid of last shmop */
  39. abi_ulong shm_nattch; /* number of current attaches */
  40. abi_ulong __unused4;
  41. abi_ulong __unused5;
  42. };
  43. #endif