* [GIT PULL] io_uring updates for 6.12-rc1
@ 2024-09-13 17:02 Jens Axboe
2024-09-16 11:59 ` pr-tracker-bot
0 siblings, 1 reply; 2+ messages in thread
From: Jens Axboe @ 2024-09-13 17:02 UTC (permalink / raw)
To: Linus Torvalds; +Cc: io-uring
Hi Linus,
Here are the main io_uring changes for the 6.12 merge window. There will
be a followup one that adds discard support, but since that depends on
both this branch and the block branch, it'll be sent post both of those.
This pull request contains:
- NAPI fixes and cleanups (Pavel, Olivier)
- Add support for absolute timeouts (Pavel)
- Fixes for io-wq/sqpoll affinities (Felix)
- Efficiency improvements for dealing with huge pages (Chenliang)
- Support for a minwait mode, where the application essentially has two
timouts - one smaller one that defines the batch timeout, and the
overall large one similar to what we had before. This enables
efficient use of batching based on count + timeout, while still working
well with periods of less intensive workloads.
- Use ITER_UBUF for single segment sends
- Add support for incremental buffer consumption. Right now each
operation will always consume a full buffer. With incremental
consumption, a recv/read operation only consumes the part of the
buffer that it needs to satisfy the operation.
- Add support for GCOV for io_uring, to help retain a high coverage of
test to code ratio.
- Fix regression with ocfs2, where an odd -EOPNOTSUPP wasn't correctly
converted to a blocking retry.
- Add support for cloning registered buffers from one ring to another.
- Misc cleanups (Anuj, me)
Please pull!
The following changes since commit 5be63fc19fcaa4c236b307420483578a56986a37:
Linux 6.11-rc5 (2024-08-25 19:07:11 +1200)
are available in the Git repository at:
git://git.kernel.dk/linux.git tags/for-6.12/io_uring-20240913
for you to fetch changes up to 7cc2a6eadcd7a5aa36ac63e6659f5c6138c7f4d2:
io_uring: add IORING_REGISTER_COPY_BUFFERS method (2024-09-12 10:14:15 -0600)
----------------------------------------------------------------
for-6.12/io_uring-20240913
----------------------------------------------------------------
Anuj Gupta (2):
io_uring: add new line after variable declaration
io_uring: remove unused rsrc_put_fn
Chenliang Li (2):
io_uring/rsrc: store folio shift and mask into imu
io_uring/rsrc: enable multi-hugepage buffer coalescing
Felix Moessbauer (3):
io_uring/sqpoll: do not allow pinning outside of cpuset
io_uring/io-wq: do not allow pinning outside of cpuset
io_uring/io-wq: inherit cpuset of cgroup in io worker
Jens Axboe (22):
io_uring/kbuf: use 'bl' directly rather than req->buf_list
io_uring/net: use ITER_UBUF for single segment send maps
io_uring/kbuf: turn io_buffer_list booleans into flags
io_uring: encapsulate extraneous wait flags into a separate struct
io_uring: move schedule wait logic into helper
io_uring: implement our own schedule timeout handling
io_uring: add support for batch wait timeout
io_uring: wire up min batch wake timeout
io_uring/kbuf: shrink nr_iovs/mode in struct buf_sel_arg
io_uring/kbuf: add io_kbuf_commit() helper
io_uring/kbuf: move io_ring_head_to_buf() to kbuf.h
Revert "io_uring: Require zeroed sqe->len on provided-buffers send"
io_uring/kbuf: pass in 'len' argument for buffer commit
io_uring/kbuf: add support for incremental buffer consumption
io_uring: add GCOV_PROFILE_URING Kconfig option
io_uring/eventfd: move refs to refcount_t
io_uring/rw: treat -EOPNOTSUPP for IOCB_NOWAIT like -EAGAIN
io_uring/rw: drop -EOPNOTSUPP check in __io_complete_rw_common()
io_uring/rsrc: clear 'slot' entry upfront
io_uring/rsrc: add reference count to struct io_mapped_ubuf
io_uring/register: provide helper to get io_ring_ctx from 'fd'
io_uring: add IORING_REGISTER_COPY_BUFFERS method
Olivier Langlois (2):
io_uring: add napi busy settings to the fdinfo output
io_uring: micro optimization of __io_sq_thread() condition
Pavel Begunkov (4):
io_uring/napi: refactor __io_napi_busy_loop()
io_uring/napi: postpone napi timeout adjustment
io_uring: add absolute mode wait timeouts
io_uring: user registered clockid for wait timeouts
include/linux/io_uring_types.h | 3 +
include/uapi/linux/io_uring.h | 42 ++++++-
init/Kconfig | 13 +++
io_uring/Makefile | 4 +
io_uring/eventfd.c | 13 ++-
io_uring/fdinfo.c | 14 ++-
io_uring/io-wq.c | 25 ++++-
io_uring/io_uring.c | 212 ++++++++++++++++++++++++++---------
io_uring/io_uring.h | 12 ++
io_uring/kbuf.c | 96 ++++++++--------
io_uring/kbuf.h | 94 +++++++++++-----
io_uring/napi.c | 35 ++----
io_uring/napi.h | 16 ---
io_uring/net.c | 27 +++--
io_uring/register.c | 91 +++++++++++----
io_uring/register.h | 1 +
io_uring/rsrc.c | 245 ++++++++++++++++++++++++++++++++++-------
io_uring/rsrc.h | 14 ++-
io_uring/rw.c | 19 +++-
io_uring/sqpoll.c | 7 +-
20 files changed, 723 insertions(+), 260 deletions(-)
--
Jens Axboe
^ permalink raw reply [flat|nested] 2+ messages in thread
* Re: [GIT PULL] io_uring updates for 6.12-rc1
2024-09-13 17:02 [GIT PULL] io_uring updates for 6.12-rc1 Jens Axboe
@ 2024-09-16 11:59 ` pr-tracker-bot
0 siblings, 0 replies; 2+ messages in thread
From: pr-tracker-bot @ 2024-09-16 11:59 UTC (permalink / raw)
To: Jens Axboe; +Cc: Linus Torvalds, io-uring
The pull request you sent on Fri, 13 Sep 2024 11:02:06 -0600:
> git://git.kernel.dk/linux.git tags/for-6.12/io_uring-20240913
has been merged into torvalds/linux.git:
https://git.kernel.org/torvalds/c/3a4d319a8fb5a9bbdf5b31ef32841eb286b1dcc2
Thank you!
--
Deet-doot-dot, I am a bot.
https://korg.docs.kernel.org/prtracker.html
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2024-09-16 11:59 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-09-13 17:02 [GIT PULL] io_uring updates for 6.12-rc1 Jens Axboe
2024-09-16 11:59 ` pr-tracker-bot
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox