On 3/6/25 5:01 AM, Jens Axboe wrote: > > On Tue, 04 Mar 2025 15:40:21 +0000, Pavel Begunkov wrote: >> Add registered buffer support for vectored io_uring operations. That >> allows to pass an iovec, all entries of which must belong to and >> point into the same registered buffer specified by sqe->buf_index. >> >> The series covers zerocopy sendmsg and reads / writes. Reads and >> writes are implemented as new opcodes, while zerocopy sendmsg >> reuses IORING_RECVSEND_FIXED_BUF for the api. >> >> [...] > > Applied, thanks! > > [1/9] io_uring: introduce struct iou_vec > commit: 32fd3277b4ae0f5e6f3a306b464f9b031e2408a8 > [2/9] io_uring: add infra for importing vectored reg buffers > commit: 1a3339cbca2225dbcdc1f4da2b25ab83da818f1d > [3/9] io_uring/rw: implement vectored registered rw > commit: 7965e1cd6199cf9c87fa02e904cbc50c45c7310f > [4/9] io_uring/rw: defer reg buf vec import > commit: 5f0a1f815dad9490db822013a2f1feba3371f4d1 > [5/9] io_uring/net: combine msghdr copy > commit: bc007e0aea60926b75b6a459ad8cf7ac357fb290 > [6/9] io_uring/net: pull vec alloc out of msghdr import > commit: 8ff671f394f97e31bc6c1acec9ebbdb108177df9 > [7/9] io_uring/net: convert to struct iou_vec > commit: 57b309177530bf99e59da21d1b1888ac4024072a > [8/9] io_uring/net: implement vectored reg bufs for zctx > commit: 6836bdad87cb83e96df0702d02d264224b0ffd2d > [9/9] io_uring: cap cached iovec/bvec size > commit: 0be2ba0a44e3670ac3f9eecd674341d77767288d Note: the vectored fixed read/write opcodes got renumbered, as they didn't sit on top of the epoll wait patches. Just a heads up, in terms of the liburing side. I'll get the basic epoll wait bits pushed up to liburing as well. -- Jens Axboe