Description
In the Linux kernel, the following vulnerability has been resolved: ublk: make sure ubq->canceling is set when queue is frozen Now ublk driver depends on `ubq->canceling` for deciding if the request can be dispatched via uring_cmd & io_uring_cmd_complete_in_task(). Once ubq->canceling is set, the uring_cmd can be done via ublk_cancel_cmd() and io_uring_cmd_done(). So set ubq->canceling when queue is frozen, this way makes sure that the flag can be observed from ublk_queue_rq() reliably, and avoids use-after-free on uring_cmd.
Product status
216c8f5ef0f209a3797292c487bdaa6991ab4b92 (git) before 7e3497d7dacb5aee69dd9be842b778083cae0e75
216c8f5ef0f209a3797292c487bdaa6991ab4b92 (git) before 5491400589e7572c2d2627ed6384302f7672aa1d
216c8f5ef0f209a3797292c487bdaa6991ab4b92 (git) before 9158359015f0eda00e521e35b7bc7ebce176aebf
216c8f5ef0f209a3797292c487bdaa6991ab4b92 (git) before 8741d0737921ec1c03cf59aebf4d01400c2b461a
6.7
Any version before 6.7
6.12.23 (semver)
6.13.11 (semver)
6.14.2 (semver)
6.15 (original_commit_for_fix)
References
git.kernel.org/...c/7e3497d7dacb5aee69dd9be842b778083cae0e75
git.kernel.org/...c/5491400589e7572c2d2627ed6384302f7672aa1d
git.kernel.org/...c/9158359015f0eda00e521e35b7bc7ebce176aebf
git.kernel.org/...c/8741d0737921ec1c03cf59aebf4d01400c2b461a