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

CVE-2024-35879
HIGH 7.8

At a glance

Source
NVD
EPSS
EPSS 0.24 % · percentile 15 ()
State
PUBLISHED
Published
Updated
Assigner
Linux
NVD status
Modified

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.

Weaknesses (CWE)

  • CWE-401 — Missing Release of Memory after Effective Lifetime

References

Scores

VersionScoreVectorScored by
CVSS 3.1HIGH 7.8CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:HLinux
CVSS 3.1HIGH 7.8CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:HNVD · 416baaa9-dc9f-4396-8d5f-8c081fb06d67 (Secondary)
CVSS 3.1MEDIUM 5.5CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:HNVD · nvd@nist.gov (Primary)

European references

CERT-FR advisories

Affected configurations (NVD CPE)

Affected products

ProductVersions
Linux · Linuxaffected d007150b4e15bfcb8d36cfd88a5645d42e44d383 < 3127b2ee50c424a96eb3559fbb7b43cf0b111c7a ; affected 80dd33cf72d1ab4f0af303f1fa242c6d6c8d328f < 3ee2424107546d882e1ddd75333ca9c32879908c ; affected 80dd33cf72d1ab4f0af303f1fa242c6d6c8d328f < 7b6df050c45a1ea158fd50bc32a8e1447dd1e951 ; affected 80dd33cf72d1ab4f0af303f1fa242c6d6c8d328f < 801c8b8ec5bfb3519566dff16a5ecd48302fca82 ; affected 80dd33cf72d1ab4f0af303f1fa242c6d6c8d328f < ae6d76e4f06c37a623e357e79d49b17411db6f5c ; affected 80dd33cf72d1ab4f0af303f1fa242c6d6c8d328f < 8917e7385346bd6584890ed362985c219fe6ae84
Linux · Linuxaffected 5.13 ; unaffected 0 < 5.13 ; unaffected 5.10.215 ≤ 5.10.* ; unaffected 5.15.154 ≤ 5.15.* ; unaffected 6.1.85 ≤ 6.1.* ; unaffected 6.6.26 ≤ 6.6.*

Sources

SourceLicence
CVE List (CVEProject cvelistV5)CVE Program Terms of Use
EPSS (FIRST.org)FIRST — attribution requested
ENISA EUVDENISA — reproduction authorised, source acknowledged
CERT-FR (ANSSI)Licence Ouverte / Etalab 2.0
NVD (NIST) via fkie-cad/nvd-json-data-feedsPublic domain — this product uses data from the NVD API but is not endorsed or certified by the NVD