CVE-2026-72176

Summary

In the Linux kernel, the following vulnerability has been resolved:

mm/damon/sysfs-schemes: put stats for scheme_add_dirs() internal error

damon_sysfs_scheme_add_dirs() setup the tried_regions directory after the stats directory setup is completed. When the tried_regions directory setup is failed, the setup function ensures the reference for the tried regions directory is released. Hence the error path should put references on setup succeeded directory objects, starting from the stats directory. However, the error path is putting the tried_regions directory instead of the stats directory.

As a direct result, the stats directory object is leaked. Worse yet, if the tried_regions directory setup failed from the initial allocation, the scheme->tried_regions field remains uninitialized. The following kobject_put(&scheme->tried_regions->kobj) call in the error path will dereference the uninitialized memory. The setup failures should not be common. But once it happens, the consequence is quite bad.

Fix this issue by correctly putting the stats directory instead of the tried_regions directory.

The issue was discovered [1] by Sashiko.

Affected Software

VendorProductVersion RangeStatus
LinuxLinux5181b75f438d2e5b7f27bf48c6ea88a87c2882b7 < 50a753171d255895e5dd41566986b48dcec06f31affected
LinuxLinux5181b75f438d2e5b7f27bf48c6ea88a87c2882b7 < f63d6e5ba72aeacdee4fddc902bd7616cd62b919affected
LinuxLinux5181b75f438d2e5b7f27bf48c6ea88a87c2882b7 < 40a04601a3f66cabd6629c258a07af645a658865affected
LinuxLinux5181b75f438d2e5b7f27bf48c6ea88a87c2882b7 < 6b6b5d7c2c957136b92c00b77b7175259f13082baffected
LinuxLinux5181b75f438d2e5b7f27bf48c6ea88a87c2882b7 < 05ea83ee88ca70f8932906d9f2617ff996f45b50affected
LinuxLinux6.2affected
LinuxLinux0 < 6.2unaffected
LinuxLinux6.6.145 <= 6.6.*unaffected
LinuxLinux6.12.97 <= 6.12.*unaffected
LinuxLinux6.18.40 <= 6.18.*unaffected
LinuxLinux7.1.5 <= 7.1.*unaffected
LinuxLinux7.2 <= *unaffected

Weaknesses

References