public inbox for io-uring@vger.kernel.org
 help / color / mirror / Atom feed
From: Jens Axboe <axboe@kernel.dk>
To: Linus Torvalds <torvalds@linux-foundation.org>
Cc: io-uring <io-uring@vger.kernel.org>
Subject: [GIT PULL] io_uring updates for 6.16-rc1
Date: Fri, 23 May 2025 14:45:14 -0600	[thread overview]
Message-ID: <1849db19-119a-4b1f-8ed6-df861d7d9c8f@kernel.dk> (raw)

Hi Linus,

Here are the io_uring updated scheduled for the 6.16-rc1 kernel release.
Pretty quiet round this time, mostly just cleanups and fixes. This pull
request contains:

- Avoid indirect function calls in io-wq for executing and freeing work.
  The design of io-wq is such that it can be a generic mechanism, but as
  it's just used by io_uring now, may as well avoid these indirect
  calls.

- Series cleaning up registered buffers for networking.

- Add support for IORING_OP_PIPE. Pretty straight forward, allows
  creating pipes with io_uring, particularly useful for having these be
  instantiated as direct descriptors.

- Series cleaning up the coalescing support fore registered buffers.

- Add support for multiple interface queues for zero-copy rx networking.
  As this feature was merged for 6.15 it supported just a single ifq per
  ring.

- Series cleaning up the eventfd support.

- Series adding dma-buf support to zero-copy rx.

- Series cleaning up and improving the request draining support.

- Series cleaning up provided buffer support, most notably with an eye
  toward making the legacy support less intrusive.

- Minor fdinfo cleanups, dropping support for dumping what credentials
  are registered.

- Improve support for overflow CQE handling, getting rid of GFP_ATOMIC
  for allocating overflow entries where possible.

- Improve detection of cases where io-wq doesn't need to spawn a new
  worker unnecessarily.

- Various little cleanups.

Please pull!


The following changes since commit d871198ee431d90f5308d53998c1ba1d5db5619a:

  io_uring/fdinfo: grab ctx->uring_lock around io_uring_show_fdinfo() (2025-05-14 07:15:28 -0600)

are available in the Git repository at:

  git://git.kernel.dk/linux.git tags/for-6.16/io_uring-20250523

for you to fetch changes up to 6faaf6e0faf1cc9a1359cfe6ecb4d9711b4a9f29:

  io_uring/cmd: warn on reg buf imports by ineligible cmds (2025-05-23 06:31:06 -0600)

----------------------------------------------------------------
for-6.16/io_uring-20250523

----------------------------------------------------------------
Caleb Sander Mateos (2):
      io_uring/wq: avoid indirect do_work/free_work calls
      trace/io_uring: fix io_uring_local_work_run ctx documentation

Jens Axboe (13):
      io_uring: add support for IORING_OP_PIPE
      io_uring/rsrc: remove node assignment helpers
      Merge branch 'io_uring-6.15' into for-6.16/io_uring
      io_uring/fdinfo: only compile if CONFIG_PROC_FS is set
      io_uring/fdinfo: get rid of dumping credentials
      io_uring: split alloc and add of overflow
      io_uring: make io_alloc_ocqe() take a struct io_cqe pointer
      io_uring: pass in struct io_big_cqe to io_alloc_ocqe()
      io_uring: add new helpers for posting overflows
      io_uring: finish IOU_OK -> IOU_COMPLETE transition
      io_uring/io-wq: move hash helpers to the top
      io_uring/io-wq: ignore non-busy worker going to sleep
      io_uring/io-wq: only create a new worker if it can make progress

Long Li (1):
      io_uring: update parameter name in io_pin_pages function declaration

Pavel Begunkov (44):
      io_uring/net: don't use io_do_buffer_select at prep
      io_uring: set IMPORT_BUFFER in generic send setup
      io_uring/kbuf: pass bgid to io_buffer_select()
      io_uring: don't store bgid in req->buf_index
      io_uring/rsrc: use unpin_user_folio
      io_uring/rsrc: clean up io_coalesce_buffer()
      io_uring/rsrc: remove null check on import
      io_uring/zcrx: remove duplicated freelist init
      io_uring/zcrx: move io_zcrx_iov_page
      io_uring/zcrx: remove sqe->file_index check
      io_uring/zcrx: let zcrx choose region for mmaping
      io_uring/zcrx: move zcrx region to struct io_zcrx_ifq
      io_uring/zcrx: add support for multiple ifqs
      io_uring/eventfd: dedup signalling helpers
      io_uring/eventfd: clean up rcu locking
      io_uring/eventfd: open code io_eventfd_grab()
      io_uring: delete misleading comment in io_fill_cqe_aux()
      io_uring/cmd: move net cmd into a separate file
      io_uring/zcrx: improve area validation
      io_uring/zcrx: resolve netdev before area creation
      io_uring/zcrx: split out memory holders from area
      io_uring/zcrx: split common area map/unmap parts
      io_uring/zcrx: dmabuf backed zerocopy receive
      io_uring/timeout: don't export link t-out disarm helper
      io_uring: remove io_preinit_req()
      io_uring: move io_req_put_rsrc_nodes()
      io_uring/net: move CONFIG_NET guards to Makefile
      io_uring: add lockdep asserts to io_add_aux_cqe
      io_uring: account drain memory to cgroup
      io_uring: fix spurious drain flushing
      io_uring: simplify drain ret passing
      io_uring: remove drain prealloc checks
      io_uring: consolidate drain seq checking
      io_uring: open code io_account_cq_overflow()
      io_uring: count allocated requests
      io_uring: drain based on allocates reqs
      io_uring/kbuf: account ring io_buffer_list memory
      io_uring/kbuf: use mem_is_zero()
      io_uring/kbuf: drop extra vars in io_register_pbuf_ring
      io_uring/kbuf: don't compute size twice on prep
      io_uring/kbuf: refactor __io_remove_buffers
      io_uring/kbuf: unify legacy buf provision and removal
      io_uring: open code io_req_cqe_overflow()
      io_uring/cmd: warn on reg buf imports by ineligible cmds

 include/linux/io_uring_types.h  |  15 +-
 include/trace/events/io_uring.h |   2 +-
 include/uapi/linux/io_uring.h   |   8 +-
 io_uring/Makefile               |   6 +-
 io_uring/advise.c               |   4 +-
 io_uring/cancel.c               |   2 +-
 io_uring/cmd_net.c              |  83 +++++++
 io_uring/epoll.c                |   4 +-
 io_uring/eventfd.c              |  66 ++----
 io_uring/eventfd.h              |   3 +-
 io_uring/fdinfo.c               |  40 ----
 io_uring/fs.c                   |  10 +-
 io_uring/futex.c                |   6 +-
 io_uring/io-wq.c                |  65 ++++--
 io_uring/io-wq.h                |   5 -
 io_uring/io_uring.c             | 285 ++++++++++++------------
 io_uring/io_uring.h             |   4 +-
 io_uring/kbuf.c                 | 148 +++++--------
 io_uring/kbuf.h                 |   8 +-
 io_uring/memmap.c               |  11 +-
 io_uring/memmap.h               |   4 +-
 io_uring/msg_ring.c             |   2 +-
 io_uring/net.c                  |  62 +++---
 io_uring/nop.c                  |   2 +-
 io_uring/notif.c                |   1 +
 io_uring/opdef.c                |  11 +-
 io_uring/openclose.c            | 139 +++++++++++-
 io_uring/openclose.h            |   3 +
 io_uring/poll.c                 |   4 +-
 io_uring/rsrc.c                 |  91 ++++----
 io_uring/rsrc.h                 |  28 +--
 io_uring/rw.c                   |   7 +-
 io_uring/rw.h                   |   2 +
 io_uring/splice.c               |   4 +-
 io_uring/statx.c                |   2 +-
 io_uring/sync.c                 |   6 +-
 io_uring/tctx.c                 |   2 -
 io_uring/timeout.c              |  13 +-
 io_uring/timeout.h              |  13 --
 io_uring/truncate.c             |   2 +-
 io_uring/uring_cmd.c            |  91 +-------
 io_uring/waitid.c               |   2 +-
 io_uring/xattr.c                |   8 +-
 io_uring/zcrx.c                 | 372 +++++++++++++++++++++++++-------
 io_uring/zcrx.h                 |  26 ++-
 45 files changed, 958 insertions(+), 714 deletions(-)

-- 
Jens Axboe


             reply	other threads:[~2025-05-23 20:45 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-05-23 20:45 Jens Axboe [this message]
2025-05-26 19:19 ` [GIT PULL] io_uring updates for 6.16-rc1 pr-tracker-bot

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1849db19-119a-4b1f-8ed6-df861d7d9c8f@kernel.dk \
    --to=axboe@kernel.dk \
    --cc=io-uring@vger.kernel.org \
    --cc=torvalds@linux-foundation.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox