This series makes selected buffer managment more resilient to errors, especially io_recv[msg](). Even though, it makes some small accidential optimisations, I don't think performance difference will be observable at the end. Pavel Begunkov (7): io_uring: indent left {send,recv}[msg]() io_uring: remove extra checks in send/recv io_uring: don't forget cflags in io_recv() io_uring: free selected-bufs if error'ed io_uring: move BUFFER_SELECT check into *recv[msg] io_uring: extract io_put_kbuf() helper io_uring: don't open-code recv kbuf managment fs/io_uring.c | 363 +++++++++++++++++++++++++------------------------- 1 file changed, 182 insertions(+), 181 deletions(-) -- 2.24.0