Vulnerability CVE-2024-35974


Published: 2024-05-20

Description:
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().

 References:
https://git.kernel.org/stable/c/740ffad95ca8033bd6e080ed337655b13b4d38ac
https://git.kernel.org/stable/c/858c489d81d659af17a4d11cfaad2afb42e47a76
https://git.kernel.org/stable/c/8b8ace080319a866f5dfe9da8e665ae51d971c54

Copyright 2026, cxsecurity.com

 

Back to Top