Hi Linus, A few fixes that should go into the 6.13-rc6 release, either fixing regressions in this cycle, or headed to stable. This pull request contains: - Fix an issue with the read multishot support and posting of CQEs from io-wq context. - Fix a regression introduced in this cycle, where making the timeout lock a raw one uncovered another locking dependency. As a result, move the timeout flushing outside of the timeout lock, punting them to a local list first. - Fix use of an uninitialized variable in io_async_msghdr. Doesn't really matter functionally, but silences a valid KMSAN complaint that it's not always initialized. - Fix use of incrementally provided buffers for read on non-pollable files, where the buffer always gets committed upfront. Unfortunately the buffer address isn't resolved first, so the read ends up using the updated rather than the current value. Please pull! The following changes since commit e33ac68e5e21ec1292490dfe061e75c0dbdd3bd4: io_uring/sqpoll: fix sqpoll error handling races (2024-12-26 10:02:40 -0700) are available in the Git repository at: git://git.kernel.dk/linux.git tags/io_uring-6.13-20250103 for you to fetch changes up to ed123c948d06688d10f3b10a7bce1d6fbfd1ed07: io_uring/kbuf: use pre-committed buffer address for non-pollable file (2025-01-03 09:38:37 -0700) ---------------------------------------------------------------- io_uring-6.13-20250103 ---------------------------------------------------------------- Jens Axboe (3): io_uring/timeout: flush timeouts outside of the timeout lock io_uring/net: always initialize kmsg->msg.msg_inq upfront io_uring/kbuf: use pre-committed buffer address for non-pollable file Pavel Begunkov (1): io_uring/rw: fix downgraded mshot read io_uring/kbuf.c | 4 +++- io_uring/net.c | 1 + io_uring/rw.c | 2 ++ io_uring/timeout.c | 45 +++++++++++++++++++++++++++++++-------------- 4 files changed, 37 insertions(+), 15 deletions(-) -- Jens Axboe