* [GIT PULL] io_uring updates for 6.9-rc1
@ 2024-03-10 20:00 Jens Axboe
2024-03-11 19:42 ` pr-tracker-bot
0 siblings, 1 reply; 2+ messages in thread
From: Jens Axboe @ 2024-03-10 20:00 UTC (permalink / raw)
To: Linus Torvalds; +Cc: io-uring
Hi Linus,
Here are the io_uring changes queued for the 6.9 kernel release. This
pull request contains:
- Make running of task_work internal loops more fair, and unify how the
different methods deal with them (me)
- Support for per-ring NAPI. The two minor networking patches are in a
shared branch with netdev. (Stefan)
- Add support for truncate (Tony)
- Export SQPOLL utilization stats (Xiaobing)
- Multishot fixes (Pavel)
- Fix for a race in manipulating the request flags via poll (Pavel)
- Cleanup the multishot checking by making it generic, moving it out of
opcode handlers (Pavel)
- Various tweaks and cleanups (me, Kunwu, Alexander)
Please pull!
The following changes since commit 54be6c6c5ae8e0d93a6c4641cb7528eb0b6ba478:
Linux 6.8-rc3 (2024-02-04 12:20:36 +0000)
are available in the Git repository at:
git://git.kernel.dk/linux.git tags/for-6.9/io_uring-20240310
for you to fetch changes up to 606559dc4fa36a954a51fbf1c6c0cc320f551fe0:
io_uring: Fix sqpoll utilization check racing with dying sqpoll (2024-03-09 07:27:09 -0700)
----------------------------------------------------------------
for-6.9/io_uring-20240310
----------------------------------------------------------------
Alexander Mikhalitsyn (1):
io_uring: use file_mnt_idmap helper
Dan Carpenter (1):
io_uring/net: fix overflow check in io_recvmsg_mshot_prep()
Gabriel Krisman Bertazi (1):
io_uring: Fix sqpoll utilization check racing with dying sqpoll
Jens Axboe (34):
io_uring: expand main struct io_kiocb flags to 64-bits
io_uring/cancel: don't default to setting req->work.cancel_seq
io_uring: add io_file_can_poll() helper
io_uring: mark the need to lock/unlock the ring as unlikely
io_uring: cleanup io_req_complete_post()
io_uring/rw: remove dead file == NULL check
io_uring/kbuf: cleanup passing back cflags
io_uring: remove looping around handling traditional task_work
io_uring: remove 'loops' argument from trace_io_uring_task_work_run()
io_uring: handle traditional task_work in FIFO order
io_uring: remove next io_kiocb fetch in task_work running
io_uring: remove unconditional looping in local task_work handling
io_uring/poll: improve readability of poll reference decrementing
io_uring: cleanup handle_tw_list() calling convention
io_uring: pass in counter to handle_tw_list() rather than return it
io_uring/sqpoll: manage task_work privately
io_uring: re-arrange struct io_ring_ctx to reduce padding
Merge branch 'for-io_uring-add-napi-busy-polling-support' of git://git.kernel.org/pub/scm/linux/kernel/git/kuba/linux into for-6.9/io_uring
io_uring/napi: ensure napi polling is aborted when work is available
io_uring: wake SQPOLL task when task_work is added to an empty queue
io_uring/sqpoll: use the correct check for pending task_work
io_uring: kill stale comment for io_cqring_overflow_kill()
io_uring/napi: enable even with a timeout of 0
io_uring/net: unify how recvmsg and sendmsg copy in the msghdr
io_uring/net: move receive multishot out of the generic msghdr path
io_uring/net: improve the usercopy for sendmsg/recvmsg
io_uring/kbuf: flag request if buffer pool is empty after buffer pick
io_uring/net: move recv/recvmsg flags out of retry loop
io_uring/net: clear REQ_F_BL_EMPTY in the multishot retry handler
io_uring/net: correctly handle multishot recvmsg retry setup
io_uring/net: remove dependency on REQ_F_PARTIAL_IO for sr->done_io
io_uring/kbuf: rename REQ_F_PARTIAL_IO to REQ_F_BL_NO_RECYCLE
io_uring/net: simplify msghd->msg_inq checking
io_uring/net: add io_req_msg_cleanup() helper
Kuniyuki Iwashima (1):
io_uring: Don't include af_unix.h.
Kunwu Chan (1):
io_uring: Simplify the allocation of slab caches
Muhammad Usama Anjum (1):
io_uring/net: correct the type of variable
Pavel Begunkov (5):
io_uring: fix mshot read defer taskrun cqe posting
io_uring: fix io_queue_proc modifying req->flags
io_uring: fix mshot io-wq checks
io_uring: refactor DEFER_TASKRUN multishot checks
io_uring/net: dedup io_recv_finish req completion
Stefan Roesch (6):
net: split off __napi_busy_poll from napi_busy_poll
net: add napi_busy_loop_rcu()
io-uring: move io_wait_queue definition to header file
io-uring: add napi busy poll support
io-uring: add sqpoll support for napi busy poll
io_uring: add register/unregister napi function
Tony Solomonik (2):
Add do_ftruncate that truncates a struct file
io_uring: add support for ftruncate
Xiaobing Li (1):
io_uring/sqpoll: statistics of the true utilization of sq threads
fs/internal.h | 1 +
fs/open.c | 53 +++---
include/linux/io_uring_types.h | 137 ++++++++------
include/net/busy_poll.h | 4 +
include/trace/events/io_uring.h | 30 ++--
include/uapi/linux/io_uring.h | 13 ++
io_uring/Makefile | 3 +-
io_uring/cancel.c | 3 +-
io_uring/cancel.h | 10 ++
io_uring/fdinfo.c | 18 +-
io_uring/filetable.h | 2 +-
io_uring/io_uring.c | 249 +++++++++++++-------------
io_uring/io_uring.h | 77 +++++++-
io_uring/kbuf.c | 35 ++--
io_uring/kbuf.h | 61 ++++---
io_uring/napi.c | 332 ++++++++++++++++++++++++++++++++++
io_uring/napi.h | 104 +++++++++++
io_uring/net.c | 382 +++++++++++++++++++++-------------------
io_uring/opdef.c | 10 ++
io_uring/poll.c | 33 ++--
io_uring/register.c | 13 ++
io_uring/rsrc.h | 2 -
io_uring/rw.c | 13 +-
io_uring/sqpoll.c | 59 ++++++-
io_uring/sqpoll.h | 1 +
io_uring/truncate.c | 48 +++++
io_uring/truncate.h | 4 +
io_uring/uring_cmd.c | 1 +
io_uring/xattr.c | 2 +-
net/core/dev.c | 57 ++++--
30 files changed, 1253 insertions(+), 504 deletions(-)
create mode 100644 io_uring/napi.c
create mode 100644 io_uring/napi.h
create mode 100644 io_uring/truncate.c
create mode 100644 io_uring/truncate.h
--
Jens Axboe
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2024-03-11 19:42 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-03-10 20:00 [GIT PULL] io_uring updates for 6.9-rc1 Jens Axboe
2024-03-11 19:42 ` 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