APPLIED/Cmnt: [SRU Mantic] Update io_uring to 6.6
Stefan Bader
stefan.bader at canonical.com
Fri Dec 1 10:55:22 UTC 2023
On 16.11.23 22:05, Thadeu Lima de Souza Cascardo wrote:
> [Impact]
> io_uring is a fast-developed subsystem in the Linux kernel. In order to keep up
> with the latest changes such that applying further fixes are possible, it
> should be updated to a more recent version.
>
> [Test case]
> Given the general update, there are no specific test cases.
>
> [Potential regression]
> io_uring users only would be affected given most changes are restricted to it.
>
>
> The following changes since commit 8f48b50cf7bcbcbfa6a5eebc7a677bdcbd6a3aee:
>
> UBUNTU: Ubuntu-6.5.0-14.14 (2023-11-14 14:46:30 +0100)
>
> are available in the Git repository at:
>
> https://git.launchpad.net/~cascardo/ubuntu/+source/linux/+git/mantic io_uring_backport
>
> for you to fetch changes up to 208fd9c171e3295a41ca69f79e92fa2b10f18194:
>
> io_uring: kiocb_done() should *not* trust ->ki_pos if ->{read,write}_iter() failed (2023-11-16 18:00:59 -0300)
>
> ----------------------------------------------------------------
> Al Viro (1):
> io_uring: kiocb_done() should *not* trust ->ki_pos if ->{read,write}_iter() failed
>
> Amir Goldstein (3):
> fs: create kiocb_{start,end}_write() helpers
> io_uring: rename kiocb_end_write() local helper
> io_uring: use kiocb_{start,end}_write() helpers
>
> Breno Leitao (1):
> io_uring: Add io_uring command support for sockets
>
> Jeff Moyer (1):
> io-wq: fully initialize wqe before calling cpuhp_state_add_instance_nocalls()
>
> Jens Axboe (28):
> fs: add IOCB flags related to passing back dio completions
> io_uring/poll: always set 'ctx' in io_cancel_data
> io_uring/timeout: always set 'ctx' in io_cancel_data
> io_uring/cancel: abstract out request match helper
> io_uring/cancel: fix sequence matching for IORING_ASYNC_CANCEL_ANY
> io_uring: use cancelation match helper for poll and timeout requests
> io_uring/cancel: add IORING_ASYNC_CANCEL_USERDATA
> io_uring/cancel: support opcode based lookup and cancelation
> io_uring/cancel: wire up IORING_ASYNC_CANCEL_OP for sync cancel
> io_uring/rw: add write support for IOCB_DIO_CALLER_COMP
> io_uring: annotate the struct io_kiocb slab for appropriate user copy
> io_uring: cleanup 'ret' handling in io_iopoll_check()
> io_uring/fdinfo: get rid of ref tryget
> io_uring/splice: use fput() directly
> io_uring: have io_file_put() take an io_kiocb rather than the file
> io_uring: remove unnecessary forward declaration
> io_uring/io-wq: don't grab wq->lock for worker activation
> io_uring/io-wq: reduce frequency of acct->lock acquisitions
> io_uring/io-wq: don't gate worker wake up success on wake_up_process()
> io_uring/fdinfo: only print ->sq_array[] if it's there
> Revert "io_uring: fix IO hang in io_wq_put_and_exit from do_exit()"
> io_uring/fs: remove sqe->rw_flags checking from LINKAT
> io_uring/kbuf: don't allow registered buffer rings on highmem pages
> io_uring: ensure io_lockdep_assert_cq_locked() handles disabled rings
> io_uring: don't allow IORING_SETUP_NO_MMAP rings on highmem pages
> io_uring: fix crash with IORING_SETUP_NO_MMAP and invalid SQ ring address
> io_uring/fdinfo: lock SQ thread while retrieving thread cpu/pid
> io_uring/rw: disable IOCB_DIO_CALLER_COMP
>
> Kees Cook (1):
> io_uring/rsrc: Annotate struct io_mapped_ubuf with __counted_by
>
> Matthew Wilcox (Oracle) (1):
> io_uring: stop calling free_compound_page()
>
> Ming Lei (1):
> io_uring: fix IO hang in io_wq_put_and_exit from do_exit()
>
> Pavel Begunkov (22):
> io_uring: open code io_fill_cqe_req()
> io_uring: remove return from io_req_cqe_overflow()
> io_uring: never overflow io_aux_cqe
> io_uring/rsrc: keep one global dummy_ubuf
> io_uring: simplify io_run_task_work_sig return
> io_uring: improve cqe !tracing hot path
> io_uring: cqe init hardening
> io_uring: simplify big_cqe handling
> io_uring: refactor __io_get_cqe()
> io_uring: optimise extra io_get_cqe null check
> io_uring: reorder cqring_flush and wakeups
> io_uring: merge iopoll and normal completion paths
> io_uring: force inline io_fill_cqe_req
> io_uring: compact SQ/CQ heads/tails
> io_uring: add option to remove SQ indirection
> io_uring: move non aligned field to the end
> io_uring: banish non-hot data to end of io_ring_ctx
> io_uring: separate task_work/waiting cache line
> io_uring: move multishot cqe cache in ctx
> io_uring: move iopoll ctx fields around
> io_uring: fix unprotected iopoll overflow
> io_uring/net: fix iter retargeting for selected buf
>
> Yue Haibing (1):
> io_uring/rsrc: Remove unused declaration io_rsrc_put_tw()
>
> include/linux/fs.h | 71 ++++++++++++-
> include/linux/io_uring.h | 6 ++
> include/linux/io_uring_types.h | 129 +++++++++++------------
> include/uapi/linux/io_uring.h | 21 +++-
> io_uring/cancel.c | 60 ++++++++---
> io_uring/cancel.h | 3 +-
> io_uring/fdinfo.c | 38 +++----
> io_uring/fs.c | 2 +-
> io_uring/io-wq.c | 71 ++++++++-----
> io_uring/io_uring.c | 229 +++++++++++++++++++++++------------------
> io_uring/io_uring.h | 119 ++++++++++-----------
> io_uring/kbuf.c | 33 +++---
> io_uring/net.c | 13 ++-
> io_uring/poll.c | 21 ++--
> io_uring/rsrc.c | 14 ++-
> io_uring/rsrc.h | 3 +-
> io_uring/rw.c | 77 ++++++--------
> io_uring/splice.c | 4 +-
> io_uring/timeout.c | 20 ++--
> io_uring/uring_cmd.c | 33 +++++-
> net/socket.c | 2 +
> 21 files changed, 578 insertions(+), 391 deletions(-)
>
Skipped since this was already applied as part of upstream stable v6.5.5.
- "io_uring: annotate the struct io_kiocb slab for appropriate user copy"
- "io_uring/net: fix iter retargeting for selected buf"
Skipped because this is already applied as part of upstream stable v6.5.6.
- "io_uring/fs: remove sqe->rw_flags checking from LINKAT"
Applied to mantic:linux/master-next. Thanks.
-Stefan
-------------- next part --------------
A non-text attachment was scrubbed...
Name: OpenPGP_0xE8675DEECBEECEA3.asc
Type: application/pgp-keys
Size: 44613 bytes
Desc: OpenPGP public key
URL: <https://lists.ubuntu.com/archives/kernel-team/attachments/20231201/42130ff7/attachment-0001.key>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: OpenPGP_signature.asc
Type: application/pgp-signature
Size: 833 bytes
Desc: OpenPGP digital signature
URL: <https://lists.ubuntu.com/archives/kernel-team/attachments/20231201/42130ff7/attachment-0001.sig>
More information about the kernel-team
mailing list