io_uring: pass in EPOLL_URING_WAKE for eventfd signaling and wakeups
authorJens Axboe <axboe@kernel.dk>
Sun, 20 Nov 2022 17:18:45 +0000 (10:18 -0700)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 4 Jan 2023 10:28:48 +0000 (11:28 +0100)
commitff46a46b7a30dd59513d7f33dfdd06553843b11d
tree72176b8dc098cee16b00c908770578c4349c313e
parent3b2728881dcd4ec3549d479c4b3aa38cf15fc73d
io_uring: pass in EPOLL_URING_WAKE for eventfd signaling and wakeups

[ Upstream commit 4464853277d0ccdb9914608dd1332f0fa2f9846f ]

Pass in EPOLL_URING_WAKE when signaling eventfd or doing poll related
wakups, so that we can check for a circular event dependency between
eventfd and epoll. If this flag is set when our wakeup handlers are
called, then we know we have a dependency that needs to terminate
multishot requests.

eventfd and epoll are the only such possible dependencies.

Cc: stable@vger.kernel.org # 6.0
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Signed-off-by: Sasha Levin <sashal@kernel.org>
io_uring/io_uring.c
io_uring/io_uring.h
io_uring/poll.c