Name | CVE-2024-35974 |
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(). |
Source | CVE (at NVD; CERT, LWN, oss-sec, fulldisc, Red Hat, Ubuntu, Gentoo, SUSE bugzilla/CVE, GitHub advisories/code/issues, web search, more) |
Vulnerable and fixed packages
The table below lists information on source packages.
Source Package | Release | Version | Status |
---|
linux (PTS) | jessie, jessie (lts) | 3.16.84-1 | vulnerable |
| stretch (security) | 4.9.320-2 | vulnerable |
| stretch (lts), stretch | 4.9.320-3 | vulnerable |
| buster (security), buster, buster (lts) | 4.19.316-1 | fixed |
| bullseye | 5.10.223-1 | fixed |
| bullseye (security) | 5.10.226-1 | fixed |
| bookworm | 6.1.115-1 | vulnerable |
| bookworm (security) | 6.1.119-1 | vulnerable |
| trixie | 6.12.5-1 | fixed |
| sid | 6.12.6-1 | fixed |
The information below is based on the following data on fixed versions.
Package | Type | Release | Fixed Version | Urgency | Origin | Debian Bugs |
---|
linux | source | jessie | (unfixed) | end-of-life | | |
linux | source | stretch | (unfixed) | end-of-life | | |
linux | source | buster | (not affected) | | | |
linux | source | bullseye | (not affected) | | | |
linux | source | (unstable) | 6.8.9-1 | | | |
Notes
[bullseye] - linux <not-affected> (Vulnerable code not present)
[buster] - linux <not-affected> (Vulnerable code not present)
https://git.kernel.org/linus/8b8ace080319a866f5dfe9da8e665ae51d971c54 (6.9-rc4)