Skip to content
Heist/ feed
Back to feed
UnratedFix available

drm/xe/oa: Fix sync entry leak on OA config emit failure

Type: advisorySources: OSV

In the Linux kernel, the following vulnerability has been resolved: drm/xe/oa: Fix sync entry leak on OA config emit failure xe_oa_emit_oa_config() releases the sync entries and the syncs array only on its success path. When it fails before the point of no return (fence allocation, config buffer allocation or batch submission), it returns without touching stream->syncs. The stream open path handles such failures in the caller, but xe_oa_config_locked() propagates the error without any cleanup, so the syncs array and the fence references held by the parsed entries are leaked. The next config ioctl overwrites stream->syncs, making the memory unreachable for good. Clean up the parsed syncs when xe_oa_emit_oa_config() fails, matching the cleanup done by the stream open error path. (cherry picked from commit 8af97b3da2cfce04e6b457c6eb17ed3c1daf912b)

Products
Kernel
Affected versions
Not specified
Fixed versions
6.12.105, 6.18.46, 7.1.10
CVEs
CVE-2026-80903
Confirmed fixed CVEs
Not specified
Updated in this feed
6 Nov 2026, 02:29 UTC · Revision 1

Source evidence

drm/xe/oa: Fix sync entry leak on OA config emit failure

core-osv · Original source

Published 4 Sept 2026, 17:19 UTC

In the Linux kernel, the following vulnerability has been resolved: drm/xe/oa: Fix sync entry leak on OA config emit failure xe_oa_emit_oa_config() releases the sync entries and the syncs array only on its success path. When it fails before the point of no return (fence allocation, config buffer allocation or batch submission), it returns without touching stream->syncs. The stream open path handles such failures in the caller, but xe_oa_config_locked() propagates the error without any cleanup, so the syncs array and the fence references held by the parsed entries are leaked. The next config ioctl overwrites stream->syncs, making the memory unreachable for good. Clean up the parsed syncs when xe_oa_emit_oa_config() fails, matching the cleanup done by the stream open error path. (cherry picked from commit 8af97b3da2cfce04e6b457c6eb17ed3c1daf912b)

osv:CVE-2026-80903

Kernel

Fixed versions: 6.12.105, 6.18.46, 7.1.10

Complete source record
{
  "id": "f779b11ec415a5ee90ece5d1992147995903ea8003194831ab09ad20f3627f86",
  "url": "https://osv.dev/vulnerability/CVE-2026-80903",
  "method": "structured",
  "payload": {
    "kind": "advisory",
    "title": "drm/xe/oa: Fix sync entry leak on OA config emit failure",
    "summary": "In the Linux kernel, the following vulnerability has been resolved: drm/xe/oa: Fix sync entry leak on OA config emit failure xe_oa_emit_oa_config() releases the sync entries and the syncs array only on its success path. When it fails before the point of no return (fence allocation, config buffer allocation or batch submission), it returns without touching stream->syncs. The stream open path handles such failures in the caller, but xe_oa_config_locked() propagates the error without any cleanup, so the syncs array and the fence references held by the parsed entries are leaked. The next config ioctl overwrites stream->syncs, making the memory unreachable for good. Clean up the parsed syncs when xe_oa_emit_oa_config() fails, matching the cleanup done by the stream open error path. (cherry picked from commit 8af97b3da2cfce04e6b457c6eb17ed3c1daf912b)",
    "evidence": "osv:CVE-2026-80903",
    "products": [
      {
        "name": {
          "value": "Kernel",
          "evidence": "/affected/1/package/name"
        },
        "prerequisites": [],
        "fixed_versions": [
          {
            "value": "6.12.105",
            "evidence": "/affected/1/ranges"
          },
          {
            "value": "6.18.46",
            "evidence": "/affected/1/ranges"
          },
          {
            "value": "7.1.10",
            "evidence": "/affected/1/ranges"
          }
        ],
        "affected_versions": []
      }
    ],
    "severity": "unknown",
    "structured": {
      "id": "CVE-2026-80903",
      "aliases": [
        "CVE-2026-80903"
      ],
      "affected": [
        {
          "ranges": [
            {
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "type": "GIT",
              "events": [
                {
                  "introduced": "f0ab9cd205d852a9024b73c71c8d8b217a04e8f0"
                },
                {
                  "fixed": "fcf7943b0a38568c547d7b5702de1d8190480616"
                }
              ]
            },
            {
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "type": "GIT",
              "events": [
                {
                  "introduced": "9920c8b88c5cf2e44f4ff508dd3c0c96e4364db0"
                },
                {
                  "fixed": "948f346fe36e1d02353c3d61b1f6b66c6af91996"
                },
                {
                  "fixed": "027150e24e173a5dffe7f5ab3a6600618f634da2"
                },
                {
                  "fixed": "8d33c4987cd162527375a3905017ae129ba7c3fe"
                }
              ]
            },
            {
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "type": "GIT",
              "events": [
                {
                  "introduced": "6.12.18"
                },
                {
                  "fixed": "6.12.105"
                }
              ]
            }
          ],
          "versions": [
            "v6.12.104",
            "v6.12.103",
            "v6.12.102",
            "v6.12.101",
            "v6.12.100",
            "v6.12.99",
            "v6.12.98",
            "v6.12.97",
            "v6.12.96",
            "v6.12.95",
            "v6.12.94",
            "v6.12.93",
            "v6.12.92",
            "v6.12.91",
            "v6.12.90",
            "v6.12.89",
            "v6.12.88",
            "v6.12.87",
            "v6.12.86",
            "v6.12.85",
            "v6.12.84",
            "v6.12.83",
            "v6.12.82",
            "v6.12.81",
            "v6.12.80",
            "v6.12.79",
            "v6.12.78",
            "v6.12.77",
            "v6.12.76",
            "v6.12.75",
            "v6.12.74",
            "v6.12.73",
            "v6.12.72",
            "v6.12.71",
            "v6.12.70",
            "v6.12.69",
            "v6.12.68",
            "v6.12.67",
            "v6.12.66",
            "v6.12.65",
            "v6.12.64",
            "v6.12.63",
            "v6.12.62",
            "v6.12.61",
            "v6.12.60",
            "v6.12.59",
            "v6.12.58",
            "v6.12.57",
            "v6.12.56",
            "v6.12.55",
            "v6.12.54",
            "v6.12.53",
            "v6.12.52",
            "v6.12.51",
            "v6.12.50",
            "v6.12.49",
            "v6.12.48",
            "v6.12.47",
            "v6.12.46",
            "v6.12.45",
            "v6.12.44",
            "v6.12.43",
            "v6.12.42",
            "v6.12.41",
            "v6.12.40",
            "v6.12.39",
            "v6.12.38",
            "v6.12.37",
            "v6.12.36",
            "v6.12.35",
            "v6.12.34",
            "v6.12.33",
            "v6.12.32",
            "v6.12.31",
            "v6.12.30",
            "v6.12.29",
            "v6.12.28",
            "v6.12.27",
            "v6.12.26",
            "v6.12.25",
            "v6.12.24",
            "v6.12.23",
            "v6.12.22",
            "v6.12.21",
            "v6.12.20",
            "v6.12.19",
            "v6.12.18"
          ],
          "database_specific": {
            "source": "https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-80903.json"
          }
        },
        {
          "ranges": [
            {
              "type": "ECOSYSTEM",
              "events": [
                {
                  "introduced": "0"
                },
                {
                  "fixed": "6.12.105"
                }
              ]
            },
            {
              "type": "ECOSYSTEM",
              "events": [
                {
                  "introduced": "6.13.0"
                },
                {
                  "fixed": "6.18.46"
                },
                {
                  "fixed": "7.1.10"
                }
              ]
            }
          ],
          "package": {
            "name": "Kernel",
            "ecosystem": "Linux"
          },
          "database_specific": {
            "source": "https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-80903.json"
          }
        }
      ],
      "modified": "2026-10-28T02:30:45.968398666Z",
      "provider": "osv",
      "references": [
        "https://git.kernel.org/stable/c/027150e24e173a5dffe7f5ab3a6600618f634da2",
        "https://git.kernel.org/stable/c/8d33c4987cd162527375a3905017ae129ba7c3fe",
        "https://git.kernel.org/stable/c/948f346fe36e1d02353c3d61b1f6b66c6af91996",
        "https://git.kernel.org/stable/c/fcf7943b0a38568c547d7b5702de1d8190480616",
        "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/80xxx/CVE-2026-80903.json",
        "https://nvd.nist.gov/vuln/detail/CVE-2026-80903",
        "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/80xxx/CVE-2026-80903.json"
      }
    },
    "related_cves": [
      {
        "value": "CVE-2026-80903",
        "evidence": "/id"
      }
    ],
    "security_relevant": true,
    "severity_evidence": null
  },
  "source_id": "core-osv",
  "document_id": 514282,
  "published_at": "2026-09-04T17:19:13.464+00:00"
}