This adds support for doing fadvise through io_uring. We assume that WILLNEED doesn't block, but that DONTNEED may block.
Showing the changes to include/uapi/linux (1 of 2 files). Show all
Unified · Split
| @@ -36,6 +36,7 @@ struct io_uring_sqe { · 35 unmodified lines | |||
| 36 | __u32 cancel_flags; | 36 | __u32 cancel_flags; |
| 37 | __u32 open_flags; | 37 | __u32 open_flags; |
| 38 | __u32 statx_flags; | 38 | __u32 statx_flags; |
| 39 | __u32 fadvise_advice; | ||
| 39 | }; | 40 | }; |
| 40 | __u64 user_data; /* data to be passed back at completion time */ | 41 | __u64 user_data; /* data to be passed back at completion time */ |
| 41 | union { | 42 | union { |
| @@ -86,6 +87,7 @@ enum { · 44 unmodified lines | |||
| 86 | IORING_OP_STATX, | 87 | IORING_OP_STATX, |
| 87 | IORING_OP_READ, | 88 | IORING_OP_READ, |
| 88 | IORING_OP_WRITE, | 89 | IORING_OP_WRITE, |
| 90 | IORING_OP_FADVISE, | ||
| 89 | 91 | ||
| 90 | /* this goes last, obviously */ | 92 | /* this goes last, obviously */ |
| 91 | IORING_OP_LAST, | 93 | IORING_OP_LAST, |