Description
In the Linux kernel, the following vulnerability has been resolved:
blk-cgroup: fix list corruption from reorder of WRITE ->lqueued
__blkcg_rstat_flush() can be run anytime, especially when blk_cgroup_bio_start is being executed.
If WRITE of `->lqueued` is re-ordered with READ of 'bisc->lnode.next' in the loop of __blkcg_rstat_flush(), `next_bisc` can be assigned with one stat instance being added in blk_cgroup_bio_start(), then the local list in __blkcg_rstat_flush() could be corrupted.
Fix the issue by adding one barrier.
Metrics
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:HWeakness enumeration
Affected software
| Vendor | Product | Versions |
|---|---|---|
| Linux | Linux | >= 3b8cc6298724021da845f2f9fd7dd4b6829a6817, < 714e59b5456e4d6e4295a9968c564abe193f461c; >= 3b8cc6298724021da845f2f9fd7dd4b6829a6817, < 785298ab6b802afa75089239266b6bbea590809c; >= 3b8cc6298724021da845f2f9fd7dd4b6829a6817, < d0aac2363549e12cc79b8e285f13d5a9f42fd08e |
| Linux | Linux | 6.2 |
| linux | linux_kernel | >= 3b8cc6298724, < 714e59b5456e |
| linux | linux_kernel | >= 3b8cc6298724, < 785298ab6b80 |
| linux | linux_kernel | >= 3b8cc6298724, < d0aac2363549 |
| linux | linux_kernel | 6.2 |
| linux | linux_kernel | — |
| linux | linux_kernel | — |
| linux | linux_kernel | — |
| linux | linux_kernel | — |
References
- https://git.kernel.org/stable/c/714e59b5456e4d6e4295a9968c564abe193f461cPatch
- https://git.kernel.org/stable/c/785298ab6b802afa75089239266b6bbea590809cPatch
- https://git.kernel.org/stable/c/d0aac2363549e12cc79b8e285f13d5a9f42fd08ePatch
- https://git.kernel.org/stable/c/714e59b5456e4d6e4295a9968c564abe193f461cPatch
- https://git.kernel.org/stable/c/785298ab6b802afa75089239266b6bbea590809cPatch
- https://git.kernel.org/stable/c/d0aac2363549e12cc79b8e285f13d5a9f42fd08ePatch
Timeline
- Published
- Jun 24, 2024
- Last modified
- Aug 4, 2026
- NVD status
- Modified