diff options
author | 2024-02-02 10:20:05 -0700 | |
---|---|---|
committer | 2024-02-08 13:27:06 -0700 | |
commit | af5d68f8892f8ee8f137648b79ceb2abc153a19b (patch) | |
tree | d76f98bfd630ee568e19f16aa2646de2b64dc1df /io_uring/opdef.c | |
parent | io_uring: pass in counter to handle_tw_list() rather than return it (diff) | |
download | wireguard-linux-af5d68f8892f8ee8f137648b79ceb2abc153a19b.tar.xz wireguard-linux-af5d68f8892f8ee8f137648b79ceb2abc153a19b.zip |
io_uring/sqpoll: manage task_work privately
Decouple from task_work running, and cap the number of entries we process
at the time. If we exceed that number, push remaining entries to a retry
list that we'll process first next time.
We cap the number of entries to process at 8, which is fairly random.
We just want to get enough per-ctx batching here, while not processing
endlessly.
Since we manually run PF_IO_WORKER related task_work anyway as the task
never exits to userspace, with this we no longer need to add an actual
task_work item to the per-process list.
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Diffstat (limited to 'io_uring/opdef.c')
0 files changed, 0 insertions, 0 deletions