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 | 36 | __u32 cancel_flags; |
| 37 | 37 | __u32 open_flags; |
| 38 | 38 | __u32 statx_flags; |
| 39 | + __u32 fadvise_advice; | |
| 39 | 40 | }; |
| 40 | 41 | __u64 user_data; /* data to be passed back at completion time */ |
| 41 | 42 | union { |
| @@ -86,6 +87,7 @@ enum { · 44 unmodified lines | ||
| 86 | 87 | IORING_OP_STATX, |
| 87 | 88 | IORING_OP_READ, |
| 88 | 89 | IORING_OP_WRITE, |
| 90 | + IORING_OP_FADVISE, | |
| 89 | 91 | |
| 90 | 92 | /* this goes last, obviously */ |
| 91 | 93 | IORING_OP_LAST, |