| ... | @@ -52,6 +52,9 @@ pub const AT_STATX_FORCE_SYNC = 0x2000; | ... | @@ -52,6 +52,9 @@ pub const AT_STATX_FORCE_SYNC = 0x2000; |
| 52 | /// - Don't sync attributes with the server | 52 | /// - Don't sync attributes with the server |
| 53 | pub const AT_STATX_DONT_SYNC = 0x4000; | 53 | pub const AT_STATX_DONT_SYNC = 0x4000; |
| 54 | | 54 | |
| | 55 | /// Apply to the entire subtree |
| | 56 | pub const AT_RECURSIVE = 0x8000; |
| | 57 | |
| 55 | pub const FUTEX_WAIT = 0; | 58 | pub const FUTEX_WAIT = 0; |
| 56 | pub const FUTEX_WAKE = 1; | 59 | pub const FUTEX_WAKE = 1; |
| 57 | pub const FUTEX_FD = 2; | 60 | pub const FUTEX_FD = 2; |
| ... | @@ -1084,7 +1087,8 @@ pub const io_uring_sqe = extern struct { | ... | @@ -1084,7 +1087,8 @@ pub const io_uring_sqe = extern struct { |
| 1084 | pub const union1 = extern union { | 1087 | pub const union1 = extern union { |
| 1085 | rw_flags: kernel_rwf, | 1088 | rw_flags: kernel_rwf, |
| 1086 | fsync_flags: u32, | 1089 | fsync_flags: u32, |
| 1087 | poll_event: u16, | 1090 | poll_events: u16, |
| | 1091 | sync_range_flags: u32, |
| 1088 | }; | 1092 | }; |
| 1089 | union1: union1, | 1093 | union1: union1, |
| 1090 | user_data: u64, | 1094 | user_data: u64, |
| ... | @@ -1100,6 +1104,9 @@ pub const io_uring_sqe = extern struct { | ... | @@ -1100,6 +1104,9 @@ pub const io_uring_sqe = extern struct { |
| 1100 | /// use fixed fileset | 1104 | /// use fixed fileset |
| 1101 | pub const IOSQE_FIXED_FILE = (1 << 0); | 1105 | pub const IOSQE_FIXED_FILE = (1 << 0); |
| 1102 | | 1106 | |
| | 1107 | /// issue after inflight IO |
| | 1108 | pub const IOSQE_IO_DRAIN = (1 << 1); |
| | 1109 | |
| 1103 | pub const IORING_OP_NOP = 0; | 1110 | pub const IORING_OP_NOP = 0; |
| 1104 | pub const IORING_OP_READV = 1; | 1111 | pub const IORING_OP_READV = 1; |
| 1105 | pub const IORING_OP_WRITEV = 2; | 1112 | pub const IORING_OP_WRITEV = 2; |
| ... | @@ -1108,6 +1115,7 @@ pub const IORING_OP_READ_FIXED = 4; | ... | @@ -1108,6 +1115,7 @@ pub const IORING_OP_READ_FIXED = 4; |
| 1108 | pub const IORING_OP_WRITE_FIXED = 5; | 1115 | pub const IORING_OP_WRITE_FIXED = 5; |
| 1109 | pub const IORING_OP_POLL_ADD = 6; | 1116 | pub const IORING_OP_POLL_ADD = 6; |
| 1110 | pub const IORING_OP_POLL_REMOVE = 7; | 1117 | pub const IORING_OP_POLL_REMOVE = 7; |
| | 1118 | pub const IORING_OP_SYNC_FILE_RANGE = 8; |
| 1111 | | 1119 | |
| 1112 | // io_uring_sqe.fsync_flags | 1120 | // io_uring_sqe.fsync_flags |
| 1113 | pub const IORING_FSYNC_DATASYNC = (1 << 0); | 1121 | pub const IORING_FSYNC_DATASYNC = (1 << 0); |
| ... | @@ -1135,3 +1143,5 @@ pub const IORING_REGISTER_BUFFERS = 0; | ... | @@ -1135,3 +1143,5 @@ pub const IORING_REGISTER_BUFFERS = 0; |
| 1135 | pub const IORING_UNREGISTER_BUFFERS = 1; | 1143 | pub const IORING_UNREGISTER_BUFFERS = 1; |
| 1136 | pub const IORING_REGISTER_FILES = 2; | 1144 | pub const IORING_REGISTER_FILES = 2; |
| 1137 | pub const IORING_UNREGISTER_FILES = 3; | 1145 | pub const IORING_UNREGISTER_FILES = 3; |
| | 1146 | pub const IORING_REGISTER_EVENTFD = 4; |
| | 1147 | pub const IORING_UNREGISTER_EVENTFD = 5; |