diff options
author | Jens Axboe <axboe@kernel.dk> | 2024-03-14 13:35:30 -0600 |
---|---|---|
committer | Jens Axboe <axboe@kernel.dk> | 2024-03-14 13:35:30 -0600 |
commit | 6203be41277bfa52024173ca6e209cee31c8a368 (patch) | |
tree | 31a9fd10c56cf3f06c6d419e4d8d7d76e8d51aea | |
parent | 1fdcca14b9af2daea50bf1f08605875ffda349e7 (diff) | |
download | liburing-6203be41277bfa52024173ca6e209cee31c8a368.tar.gz |
man/io_uring_prep_poll_update: note on event masks that can be updated
We can only modify the lower 16-bits of the event mask, higher bits
are internal state. It is nonsensical to eg attempt to modify whether
it's an exclusive wait or not, as that needs to happen at insertion
time rather than later on.
Link: https://github.com/axboe/liburing/issues/1099
Signed-off-by: Jens Axboe <axboe@kernel.dk>
-rw-r--r-- | man/io_uring_prep_poll_update.3 | 14 |
1 files changed, 13 insertions, 1 deletions
diff --git a/man/io_uring_prep_poll_update.3 b/man/io_uring_prep_poll_update.3 index 11f63467..41cf7766 100644 --- a/man/io_uring_prep_poll_update.3 +++ b/man/io_uring_prep_poll_update.3 @@ -40,7 +40,19 @@ modifier flags is a bitmask and may contain and OR'ed mask of: If set, the poll update request will replace the existing events being waited for with the ones specified in the .I poll_mask -argument to the function. +argument to the function. Note that only the lower 16 bits of events can +be updated. This includes things like +.B EPOLLIN +and +.B EPOLLOUT . +Higher order masks/settings are included as internal state, and cannot be +modified. That includes settings like +.B EPOLLONESHOT , +.B EPOLLEXCLUSIVE , +and +.B EPOLLET . +If an application wishes to modify these, it must cancel/remove the existing +poll request and arm a new one. .TP .B IORING_POLL_UPDATE_USER_DATA If set, the poll update request will update the existing user_data of the |