io_uring: change io_get_ext_arg() to use uaccess begin + end
authorJens Axboe <axboe@kernel.dk>
Tue, 22 Oct 2024 19:41:42 +0000 (13:41 -0600)
committerJens Axboe <axboe@kernel.dk>
Mon, 28 Oct 2024 13:06:28 +0000 (07:06 -0600)
commit3b4f488c478676dc3310396983b9f36cc11003f4
tree36cf1fcb94ae27e6c4ccc3c876103d83cfcb5216
parent26e06a84fe0db67019f9fd54dbabe68d48223e94
io_uring: change io_get_ext_arg() to use uaccess begin + end

In scenarios where a high frequency of wait events are seen, the copy
of the struct io_uring_getevents_arg is quite noticeable in the
profiles in terms of time spent. It can be seen as up to 3.5-4.5%.
Rewrite the copy-in logic, saving about 0.5% of the time.

Reviewed-by: Keith Busch <kbusch@kernel.org>
Signed-off-by: Jens Axboe <axboe@kernel.dk>
io_uring/io_uring.c