Skip to content

Commit 9917bf8

Browse files
committed
Merge tag 'io_uring-6.18-20251128' of git://git.kernel.org/pub/scm/linux/kernel/git/axboe/linux
Pull io_uring fixes from Jens Axboe: - Ensure that vectored registered buffer imports ties the lifetime of those to the zero-copy send notification, not the parent request - Fix a bug introduced in this merge window, with the introduction of mixed sized CQE support * tag 'io_uring-6.18-20251128' of git://git.kernel.org/pub/scm/linux/kernel/git/axboe/linux: io_uring: fix mixed cqe overflow handling io_uring/net: ensure vectored buffer node import is tied to notification
2 parents f3b1733 + f6dc5a3 commit 9917bf8

2 files changed

Lines changed: 6 additions & 2 deletions

File tree

io_uring/io_uring.c

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -634,6 +634,8 @@ static void __io_cqring_overflow_flush(struct io_ring_ctx *ctx, bool dying)
634634
is_cqe32 = true;
635635
cqe_size <<= 1;
636636
}
637+
if (ctx->flags & IORING_SETUP_CQE32)
638+
is_cqe32 = false;
637639

638640
if (!dying) {
639641
if (!io_get_cqe_overflow(ctx, &cqe, true, is_cqe32))

io_uring/net.c

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1532,8 +1532,10 @@ int io_sendmsg_zc(struct io_kiocb *req, unsigned int issue_flags)
15321532
unsigned uvec_segs = kmsg->msg.msg_iter.nr_segs;
15331533
int ret;
15341534

1535-
ret = io_import_reg_vec(ITER_SOURCE, &kmsg->msg.msg_iter, req,
1536-
&kmsg->vec, uvec_segs, issue_flags);
1535+
sr->notif->buf_index = req->buf_index;
1536+
ret = io_import_reg_vec(ITER_SOURCE, &kmsg->msg.msg_iter,
1537+
sr->notif, &kmsg->vec, uvec_segs,
1538+
issue_flags);
15371539
if (unlikely(ret))
15381540
return ret;
15391541
req->flags &= ~REQ_F_IMPORT_BUFFER;

0 commit comments

Comments
 (0)