From: Yang Xiuwei Date: Fri, 19 Sep 2025 09:03:52 +0000 (+0800) Subject: io_uring: fix incorrect io_kiocb reference in io_link_skb X-Git-Tag: v6.17-rc7~9^2 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=2c139a47eff8de24e3350dadb4c9d5e3426db826;p=thirdparty%2Fkernel%2Fstable.git io_uring: fix incorrect io_kiocb reference in io_link_skb In io_link_skb function, there is a bug where prev_notif is incorrectly assigned using 'nd' instead of 'prev_nd'. This causes the context validation check to compare the current notification with itself instead of comparing it with the previous notification. Fix by using the correct prev_nd parameter when obtaining prev_notif. Signed-off-by: Yang Xiuwei Reviewed-by: Pavel Begunkov Fixes: 6fe4220912d19 ("io_uring/notif: implement notification stacking") Signed-off-by: Jens Axboe --- diff --git a/io_uring/notif.c b/io_uring/notif.c index 9a6f6e92d7424..ea9c0116cec2d 100644 --- a/io_uring/notif.c +++ b/io_uring/notif.c @@ -85,7 +85,7 @@ static int io_link_skb(struct sk_buff *skb, struct ubuf_info *uarg) return -EEXIST; prev_nd = container_of(prev_uarg, struct io_notif_data, uarg); - prev_notif = cmd_to_io_kiocb(nd); + prev_notif = cmd_to_io_kiocb(prev_nd); /* make sure all noifications can be finished in the same task_work */ if (unlikely(notif->ctx != prev_notif->ctx ||