In the Linux kernel, the following vulnerability has been resolved: block: fix q->blkg_list corruption during disk rebind Multiple gendisk instances can allocated/added for single request queue in case of disk rebind. blkg may still stay in q->blkg_list when calling blkcg_init_disk() for rebind, then q->blkg_list becomes corrupted. Fix the list corruption issue by: - add blkg_init_queue() to initialize q->blkg_list & q->blkcg_mutex only - move calling blkg_init_queue() into blk_alloc_queue() The list corruption should be started since commit f1c006f1c685 (“blk-cgroup: synchronize pd_free_fn() from blkg_free_workfn() and blkcg_deactivate_policy()”) which delays removing blkg from q->blkg_list into blkg_free_workfn().
git.kernel.org/linus/8b8ace080319a866f5dfe9da8e665ae51d971c54
git.kernel.org/stable/c/740ffad95ca8033bd6e080ed337655b13b4d38ac
git.kernel.org/stable/c/858c489d81d659af17a4d11cfaad2afb42e47a76
git.kernel.org/stable/c/8b8ace080319a866f5dfe9da8e665ae51d971c54
ubuntu.com/security/CVE-2024-35974
ubuntu.com/security/notices/USN-6893-1
ubuntu.com/security/notices/USN-6893-2
ubuntu.com/security/notices/USN-6893-3
ubuntu.com/security/notices/USN-6918-1
www.cve.org/CVERecord?id=CVE-2024-35974