diff options
author | Jens Axboe <axboe@kernel.dk> | 2022-11-20 10:13:44 -0700 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2023-01-04 11:26:29 +0100 |
commit | 4a403dfa501ce453e5fbb44b9aa7e935d42a831e (patch) | |
tree | 3acd3da7b8313354f986891be31ec552852cb1f7 /tools/perf/scripts/python/export-to-sqlite.py | |
parent | f41f8904fda99a09bd57bb833fced366c6ba7da9 (diff) |
eventfd: provide a eventfd_signal_mask() helper
commit 03e02acda8e267a8183e1e0ed289ff1ef9cd7ed8 upstream.
This is identical to eventfd_signal(), but it allows the caller to pass
in a mask to be used for the poll wakeup key. The use case is avoiding
repeated multishot triggers if we have a dependency between eventfd and
io_uring.
If we setup an eventfd context and register that as the io_uring eventfd,
and at the same time queue a multishot poll request for the eventfd
context, then any CQE posted will repeatedly trigger the multishot request
until it terminates when the CQ ring overflows.
In preparation for io_uring detecting this circular dependency, add the
mentioned helper so that io_uring can pass in EPOLL_URING as part of the
poll wakeup key.
Cc: stable@vger.kernel.org # 6.0
[axboe: fold in !CONFIG_EVENTFD fix from Zhang Qilong]
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'tools/perf/scripts/python/export-to-sqlite.py')
0 files changed, 0 insertions, 0 deletions