io_uring: add support for level triggered poll
By default, the POLL_ADD command does edge triggered poll - if we get a non-zero mask on the initial poll attempt, we complete the request successfully. Support level triggered by always waiting for a notification, regardless of whether or not the initial mask matches the file state. Signed-off-by: Jens Axboe <axboe@kernel.dk>
This commit is contained in:
parent
d9b57aa3cf
commit
b9ba8a4463
2 changed files with 13 additions and 5 deletions
|
|
@ -229,10 +229,13 @@ enum io_uring_op {
|
|||
*
|
||||
* IORING_POLL_UPDATE Update existing poll request, matching
|
||||
* sqe->addr as the old user_data field.
|
||||
*
|
||||
* IORING_POLL_LEVEL Level triggered poll.
|
||||
*/
|
||||
#define IORING_POLL_ADD_MULTI (1U << 0)
|
||||
#define IORING_POLL_UPDATE_EVENTS (1U << 1)
|
||||
#define IORING_POLL_UPDATE_USER_DATA (1U << 2)
|
||||
#define IORING_POLL_ADD_LEVEL (1U << 3)
|
||||
|
||||
/*
|
||||
* ASYNC_CANCEL flags.
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue