blk-cgroup: Reinit blkg_iostat_set after clearing in blkcg_reset_stats()
CVE-2023-53421

Currently unrated

Key Information:

Vendor

Linux

Status
Vendor
CVE Published:
18 September 2025

What is CVE-2023-53421?

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.

Affected Version(s)

Linux f73316482977ac401ac37245c9df48079d4e11f3

Linux f73316482977ac401ac37245c9df48079d4e11f3

Linux f73316482977ac401ac37245c9df48079d4e11f3 < 3d2af77e31ade05ff7ccc3658c3635ec1bea0979

References

Timeline

  • Vulnerability published

  • Vulnerability Reserved

.
CVE-2023-53421 : Linux Kernel Vulnerability in blk-cgroup Impacting Memory Management