CVE-2023-53421
blk-cgroup: Reinit blkg_iostat_set after clearing in blkcg_reset_stats()
- State
- Published
- Severity
- 5.5 Medium
- Published
- Sep 18, 2025
- Updated
- Jun 1, 2026
- Reserved
- Sep 17, 2025
Description
In the Linux kernel, the following vulnerability has been resolved:
blk-cgroup: Reinit blkg_iostat_set after clearing in blkcg_reset_stats()
When blkg_alloc() is called to allocate a blkcg_gq structure with the associated blkg_iostat_set's, there are 2 fields within blkg_iostat_set that requires proper initialization - blkg & sync. The former field was introduced by commit 3b8cc6298724 ("blk-cgroup: Optimize blkcg_rstat_flush()") while the later one was introduced by commit f73316482977 ("blk-cgroup: reimplement basic IO stats using cgroup rstat").
Unfortunately those fields in the blkg_iostat_set's are not properly re-initialized when they are cleared in v1's blkcg_reset_stats(). This can lead to a kernel panic due to NULL pointer access of the blkg pointer. The missing initialization of sync is less problematic and can be a problem in a debug kernel due to missing lockdep initialization.
Fix these problems by re-initializing them after memory clearing.
Scores
| CVSS | Score | Vector | Source |
|---|---|---|---|
| 3.1 | 5.5 Medium | CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H | CISA-ADP |
Weaknesses
- CWE-476 NULL Pointer Dereference
Affected Products
| Product | Versions |
|---|---|
LinuxLinux |
|
LinuxLinux |
|
References
- https://git.kernel.org/stable/c/58c135513562698f222a58ba07dbdfcfb268aa0d
- https://git.kernel.org/stable/c/0561aa6033dd181594116d705c41fc16e97161a2
- https://git.kernel.org/stable/c/892faa76be894d324bf48b12a55c7af7be2bad83
- https://git.kernel.org/stable/c/b0d26283af612b9e0cc3188b0b88ad7fdea447e8
- https://git.kernel.org/stable/c/abbce7f82613ea5eeefd0fc3c1c8e449b9cef2a2
- https://git.kernel.org/stable/c/3d2af77e31ade05ff7ccc3658c3635ec1bea0979
Every record here comes from the CVE Program’s CVE List. © 1999–2026 The MITRE Corporation. CVE is a registered trademark of The MITRE Corporation. The records are reproduced under the CVE Program terms of use.