1) support dynamic managment for registered buffers, including update. 2) add new IORING_REGISTER* for rsrc register and rsrc update, which are just dispatch files/buffers to right callbacks. Needed because old ones not nicely extendible. The downside -- restrictions not supporting it with fine granularity. 3) add rsrc tagging, with tag=0 ingnoring CQE posting. Doesn't post CQEs on unregister, but can easily be changed v2: instead of async_data importing for fixed rw, save used io_mapped_ubuf and use it on re-import. Add patch 9/12 as a preparation for that. Fix prep rw getting a rsrc node ref for fixed files without having a rsrc node. Bijan Mottahedeh (1): io_uring: implement fixed buffers registration similar to fixed files Pavel Begunkov (11): io_uring: move __io_sqe_files_unregister io_uring: return back rsrc data free helper io_uring: decouple CQE filling from requests io_uring: preparation for rsrc tagging io_uring: add generic path for rsrc update io_uring: enumerate dynamic resources io_uring: add IORING_REGISTER_RSRC io_uring: add generic rsrc update with tags io_uring: keep table of pointers to ubufs io_uring: prepare fixed rw for dynanic buffers io_uring: add full-fledged dynamic buffers support fs/io_uring.c | 523 +++++++++++++++++++++++++--------- include/uapi/linux/io_uring.h | 23 ++ 2 files changed, 405 insertions(+), 141 deletions(-) -- 2.31.1