Dylan Yudaken 1b1d7b4bf1 io_uring: only wake when the correct events are set
The check for waking up a request compares the poll_t bits, however this
will always contain some common flags so this always wakes up.

For files with single wait queues such as sockets this can cause the
request to be sent to the async worker unnecesarily. Further if it is
non-blocking will complete the request with EAGAIN which is not desired.

Here exclude these common events, making sure to not exclude POLLERR which
might be important.

Fixes: d7718a9d25a6 ("io_uring: use poll driven retry for files that support it")
Signed-off-by: Dylan Yudaken <dylany@fb.com>
Link: https://lore.kernel.org/r/20220512091834.728610-3-dylany@fb.com
Signed-off-by: Jens Axboe <axboe@kernel.dk>
2022-05-13 14:37:50 -06:00
..
2022-03-31 15:49:36 -07:00
2022-03-22 18:26:56 -07:00
2022-03-22 18:26:56 -07:00
2022-03-22 18:26:56 -07:00
2022-04-14 10:58:27 -07:00
2022-03-22 17:03:12 -07:00
2022-01-12 11:11:34 -08:00
2022-04-01 14:20:24 -07:00
\n
2022-03-25 17:38:15 -07:00
2022-03-31 15:57:50 -07:00
2022-03-22 18:26:56 -07:00
2022-03-22 18:26:56 -07:00
2022-03-22 18:26:56 -07:00
2022-03-22 18:26:56 -07:00
2022-03-29 18:17:30 -07:00
2022-04-08 07:39:17 -10:00
2022-04-12 14:23:19 -10:00
2022-03-22 18:26:56 -07:00
2022-04-03 12:26:01 -07:00
\n
2022-03-25 17:38:15 -07:00
2022-03-22 18:26:56 -07:00
\n
2022-03-25 17:38:15 -07:00
2022-03-22 18:26:56 -07:00
2022-03-22 18:26:56 -07:00
2022-04-01 19:30:44 -07:00
2022-03-26 11:51:46 -07:00
2021-11-17 09:26:09 +01:00
2022-04-01 14:40:44 -04:00
2022-03-28 17:29:53 -07:00
2022-03-24 18:12:09 -07:00
2022-03-28 17:29:53 -07:00
2022-03-08 17:55:03 -07:00
2022-04-01 19:35:56 -07:00
2022-03-22 17:03:12 -07:00
2022-03-21 19:16:02 -07:00
2022-03-26 11:59:30 -07:00
2022-03-08 17:55:03 -07:00
2022-04-19 10:19:02 -07:00
2022-04-19 10:19:02 -07:00