Improve support for registered buffers consisting of huge pages by keeping them as a single element bvec instead of chunking them into 4K pages. It improves performance quite a bit cutting CPU cycles on dma-mapping and promoting a more efficient use of hardware. With a custom fio/t/io_uring 64K reads benchmark with multiple Optanes I've got 671 -> 736 KIOPS improvement (~10%). Pavel Begunkov (4): io_uring/rsrc: disallow multi-source reg buffers io_uring/rsrc: fix a comment in io_import_fixed() io_uring/rsrc: optimise single entry advance io_uring/rsrc: optimise registered huge pages io_uring/rsrc.c | 58 ++++++++++++++++++++++++++++++++++++++----------- 1 file changed, 45 insertions(+), 13 deletions(-) -- 2.39.1