CVE-2024-35879

of: dynamic: Synchronize of_changeset_destroy() with the devlink removals

State
Published
Severity
7.8 High
Published
May 19, 2024
Updated
Aug 5, 2026
Reserved
May 17, 2024

Read the record on cve.org

Description

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

of: dynamic: Synchronize of_changeset_destroy() with the devlink removals

In the following sequence: 1) of_platform_depopulate() 2) of_overlay_remove()

During the step 1, devices are destroyed and devlinks are removed. During the step 2, OF nodes are destroyed but __of_changeset_entry_destroy() can raise warnings related to missing of_node_put(): ERROR: memory leak, expected refcount 1 instead of 2 ...

Indeed, during the devlink removals performed at step 1, the removal itself releasing the device (and the attached of_node) is done by a job queued in a workqueue and so, it is done asynchronously with respect to function calls. When the warning is present, of_node_put() will be called but wrongly too late from the workqueue job.

In order to be sure that any ongoing devlink removals are done before the of_node destruction, synchronize the of_changeset_destroy() with the devlink removals.

Scores

CVSSScoreVectorSource
3.17.8 HighCVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:HLinux

Weaknesses

The record names no weakness.

Affected Products

ProductVersions
LinuxLinux
  • d007150b4e15bfcb8d36cfd88a5645d42e44d383 to before 3127b2ee50c424a96eb3559fbb7b43cf0b111c7aAffected
  • 80dd33cf72d1ab4f0af303f1fa242c6d6c8d328f to before 3ee2424107546d882e1ddd75333ca9c32879908cAffected
  • 80dd33cf72d1ab4f0af303f1fa242c6d6c8d328f to before 7b6df050c45a1ea158fd50bc32a8e1447dd1e951Affected
  • 80dd33cf72d1ab4f0af303f1fa242c6d6c8d328f to before 801c8b8ec5bfb3519566dff16a5ecd48302fca82Affected
  • 80dd33cf72d1ab4f0af303f1fa242c6d6c8d328f to before ae6d76e4f06c37a623e357e79d49b17411db6f5cAffected
  • 80dd33cf72d1ab4f0af303f1fa242c6d6c8d328f to before 8917e7385346bd6584890ed362985c219fe6ae84Affected
  • 252c23915546863685ecc68cb3a39e7e80c6c9d4Affected
  • 5.10.42 to before 5.10.215Affected
  • 5.12.9 to before 5.13Affected
LinuxLinux
  • 5.13Affected
  • before 5.13Not affected
  • 5.10.215 through 5.10.*Not affected
  • 5.15.154 through 5.15.*Not affected
  • 6.1.85 through 6.1.*Not affected
  • 6.6.26 through 6.6.*Not affected
  • 6.8.5 through 6.8.*Not affected
  • 6.9 and laterNot affected

References

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.