Skip to content
Heist/ feed
Back to feed
UnratedFix available

drm/radeon: fix memory leak in radeon_ring_restore() on lock failure

Type: advisorySources: OSV

In the Linux kernel, the following vulnerability has been resolved: drm/radeon: fix memory leak in radeon_ring_restore() on lock failure radeon_ring_restore() takes ownership of the data buffer allocated by radeon_ring_backup(). The caller (radeon_gpu_reset()) only frees it in the non-restore branch; in the restore branch it relies on radeon_ring_restore() to free it. If radeon_ring_lock() fails, the function returned early without calling kvfree(data), leaking the ring backup buffer on every GPU reset that fails at the lock stage. During repeated GPU resets this causes cumulative kernel memory exhaustion. Free data before returning the error.

Products
Kernel
Affected versions
Not specified
Fixed versions
5.10.261, 5.15.212, 6.1.178, 6.12.97, 6.18.40, 6.6.145, 7.1.5
CVEs
CVE-2026-74416
Confirmed fixed CVEs
Not specified
Updated in this feed
6 Nov 2026, 02:33 UTC · Revision 1

Source evidence

drm/radeon: fix memory leak in radeon_ring_restore() on lock failure

core-osv · Original source

Published 15 Aug 2026, 05:59 UTC

In the Linux kernel, the following vulnerability has been resolved: drm/radeon: fix memory leak in radeon_ring_restore() on lock failure radeon_ring_restore() takes ownership of the data buffer allocated by radeon_ring_backup(). The caller (radeon_gpu_reset()) only frees it in the non-restore branch; in the restore branch it relies on radeon_ring_restore() to free it. If radeon_ring_lock() fails, the function returned early without calling kvfree(data), leaking the ring backup buffer on every GPU reset that fails at the lock stage. During repeated GPU resets this causes cumulative kernel memory exhaustion. Free data before returning the error.

osv:CVE-2026-74416

Kernel

Fixed versions: 5.10.261, 5.15.212, 6.1.178, 6.6.145, 6.12.97, 6.18.40, 7.1.5

Complete source record
{
  "id": "f6275cc0138aff364857eb5a22f8615d8c5e1dfbd18195da3e31f35b4ddba11f",
  "url": "https://osv.dev/vulnerability/CVE-2026-74416",
  "method": "structured",
  "payload": {
    "kind": "advisory",
    "title": "drm/radeon: fix memory leak in radeon_ring_restore() on lock failure",
    "summary": "In the Linux kernel, the following vulnerability has been resolved: drm/radeon: fix memory leak in radeon_ring_restore() on lock failure radeon_ring_restore() takes ownership of the data buffer allocated by radeon_ring_backup(). The caller (radeon_gpu_reset()) only frees it in the non-restore branch; in the restore branch it relies on radeon_ring_restore() to free it. If radeon_ring_lock() fails, the function returned early without calling kvfree(data), leaking the ring backup buffer on every GPU reset that fails at the lock stage. During repeated GPU resets this causes cumulative kernel memory exhaustion. Free data before returning the error.",
    "evidence": "osv:CVE-2026-74416",
    "products": [
      {
        "name": {
          "value": "Kernel",
          "evidence": "/affected/1/package/name"
        },
        "prerequisites": [],
        "fixed_versions": [
          {
            "value": "5.10.261",
            "evidence": "/affected/1/ranges"
          },
          {
            "value": "5.15.212",
            "evidence": "/affected/1/ranges"
          },
          {
            "value": "6.1.178",
            "evidence": "/affected/1/ranges"
          },
          {
            "value": "6.6.145",
            "evidence": "/affected/1/ranges"
          },
          {
            "value": "6.12.97",
            "evidence": "/affected/1/ranges"
          },
          {
            "value": "6.18.40",
            "evidence": "/affected/1/ranges"
          },
          {
            "value": "7.1.5",
            "evidence": "/affected/1/ranges"
          }
        ],
        "affected_versions": []
      }
    ],
    "severity": "unknown",
    "structured": {
      "id": "CVE-2026-74416",
      "aliases": [
        "CVE-2026-74416"
      ],
      "affected": [
        {
          "ranges": [
            {
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "type": "GIT",
              "events": [
                {
                  "introduced": "55d7c22192becd0ec827a6901899ff56fa985658"
                },
                {
                  "fixed": "63912418f1fbb6456ea04bbcdf8f4d5090d23350"
                },
                {
                  "fixed": "919e3e398bf301c6418dffdcd5e5c4fd9be39cf7"
                },
                {
                  "fixed": "07c213f3499dd72e2922c1c73fe9ffea24874bef"
                },
                {
                  "fixed": "1c9ba32308c02c198c378fcdf06be9ffc3111147"
                },
                {
                  "fixed": "eecfb76129ebef7e3aa41e18a4668cd91dfc6267"
                },
                {
                  "fixed": "06dc892561f5a08b2493c34c8ec2cb94dea33159"
                },
                {
                  "fixed": "ccc42187fc2d0720947a63ce1b9e399d2c068ff4"
                },
                {
                  "fixed": "82f1d6042611d45b8b9de423bbcb4e0ced9ec62b"
                }
              ]
            }
          ],
          "database_specific": {
            "source": "https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-74416.json"
          }
        },
        {
          "ranges": [
            {
              "type": "ECOSYSTEM",
              "events": [
                {
                  "introduced": "3.6.0"
                },
                {
                  "fixed": "5.10.261"
                }
              ]
            },
            {
              "type": "ECOSYSTEM",
              "events": [
                {
                  "introduced": "5.11.0"
                },
                {
                  "fixed": "5.15.212"
                }
              ]
            },
            {
              "type": "ECOSYSTEM",
              "events": [
                {
                  "introduced": "5.16.0"
                },
                {
                  "fixed": "6.1.178"
                }
              ]
            },
            {
              "type": "ECOSYSTEM",
              "events": [
                {
                  "introduced": "6.2.0"
                },
                {
                  "fixed": "6.6.145"
                }
              ]
            },
            {
              "type": "ECOSYSTEM",
              "events": [
                {
                  "introduced": "6.7.0"
                },
                {
                  "fixed": "6.12.97"
                }
              ]
            },
            {
              "type": "ECOSYSTEM",
              "events": [
                {
                  "introduced": "6.13.0"
                },
                {
                  "fixed": "6.18.40"
                }
              ]
            },
            {
              "type": "ECOSYSTEM",
              "events": [
                {
                  "introduced": "6.19.0"
                },
                {
                  "fixed": "7.1.5"
                }
              ]
            }
          ],
          "package": {
            "name": "Kernel",
            "ecosystem": "Linux"
          },
          "database_specific": {
            "source": "https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-74416.json"
          }
        }
      ],
      "modified": "2026-10-28T02:30:46.001504314Z",
      "provider": "osv",
      "references": [
        "https://git.kernel.org/stable/c/06dc892561f5a08b2493c34c8ec2cb94dea33159",
        "https://git.kernel.org/stable/c/07c213f3499dd72e2922c1c73fe9ffea24874bef",
        "https://git.kernel.org/stable/c/1c9ba32308c02c198c378fcdf06be9ffc3111147",
        "https://git.kernel.org/stable/c/63912418f1fbb6456ea04bbcdf8f4d5090d23350",
        "https://git.kernel.org/stable/c/82f1d6042611d45b8b9de423bbcb4e0ced9ec62b",
        "https://git.kernel.org/stable/c/919e3e398bf301c6418dffdcd5e5c4fd9be39cf7",
        "https://git.kernel.org/stable/c/ccc42187fc2d0720947a63ce1b9e399d2c068ff4",
        "https://git.kernel.org/stable/c/eecfb76129ebef7e3aa41e18a4668cd91dfc6267",
        "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/74xxx/CVE-2026-74416.json",
        "https://nvd.nist.gov/vuln/detail/CVE-2026-74416",
        "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git"
      ],
      "provider_metadata": {
        "cna_assigner": "Linux",
        "osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/74xxx/CVE-2026-74416.json"
      }
    },
    "related_cves": [
      {
        "value": "CVE-2026-74416",
        "evidence": "/id"
      }
    ],
    "security_relevant": true,
    "severity_evidence": null
  },
  "source_id": "core-osv",
  "document_id": 514308,
  "published_at": "2026-08-15T05:59:22.077+00:00"
}