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

iommu/tegra241-cmdqv: Reject a vSID wider than the SID_MATCH field

tegra241_vintf_init_vsid() programs the guest-provided vSID into SID_MATCH,
whose VIRT_SID field spans bits [20:1] with bit 0 as the match-enable flag.
The HW therefore matches only a 20-bit Stream ID.

The bound check rejects only virt_sid > UINT_MAX, which admits a value far
wider than the field. The write "virt_sid << 1 | 0x1" then drops every bit
above 20: a virt_sid of 0x80000000 lands as SID_MATCH = 0x1, a valid match
on vSID 0, so the entry aliases the wrong Stream ID. Because vdev->virt_id
is guest-controlled, a VMM can trigger it.

Validate virt_sid against the field width with FIELD_MAX(), and program the
register with FIELD_PREP() so the value and the field stay consistent.
Published: 2026-09-11
Score: 8.8 High
EPSS: < 1% Very Low
KEV: No
Impact: Unintended Stream ID aliasing leading to possible data leakage or corruption
Action: Patch now
AI Analysis

Impact

In the Linux kernel’s iOMMU Tegra241 command queue driver, a guest‑controlled virtual Stream ID can exceed the 20‑bit field imposed by the hardware. When the value is written to the SID_MATCH register, bits above the allowed width are discarded, producing a match value that refers to a different Stream ID. Because the driver performs only a maximum unsigned integer check (CWE‑681), it fails to reject wide values, allowing a virtual machine monitor to create stream entries that alias an unintended Stream ID and potentially redirect or leak data among virtual devices. The flaw does not grant direct code execution, yet it can compromise the confidentiality or integrity of traffic handled by the affected device. Based on the description, it is inferred that the likely attack vector is the hypervisor manipulating guest‑provided vdev->virt_id, or a compromised guest that can influence this value.

Affected Systems

The weakness resides in the Linux kernel driver for Tegra241 IOMMU devices (iommu/tegra241‑cmdqv). It applies to any system running the affected kernel code before the fix is applied; specific all kernels containing the commit before the fix should be considered vulnerable.

Risk and Exploitability

The CVSS score of 8.8 denotes a high severity, and the EPSS score of <1% indicates a very low exploitation probability, although no proof of active exploitation exists. The vulnerability is not in the CISA KEV catalog. Based on the description, it is inferred that the likely attack vector is the hypervisor manipulating guest‑controlled vSID values. An attacker that controls the virtual machine monitor can trigger the bug and establish a persistent mismatch in Stream ID mapping, affecting neighboring virtual devices. The existence of a vulnerable driver without a public exploit means the risk to environments where untrusted VMs share the same physical hardware is currently theoretical, but the potential impact warrants urgent remediation.

Generated by OpenCVE AI on September 13, 2026 at 08:45 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Apply the kernel patch that adds field‑width validation and uses FIELD_PREP for the SID_MATCH register.
  • If an immediate kernel update is not possible, back‑port the field‑width validation logic to the driver as described in the advisory.
  • Restrict or audit the hypervisor configuration to ensure that guest‑controlled vdev->virt_id cannot be set to arbitrary values.

Generated by OpenCVE AI on September 13, 2026 at 08:45 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Sun, 13 Sep 2026 06:45:00 +0000

Type Values Removed Values Added
Metrics cvssV3_1

{'score': 7.0, 'vector': 'CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:H'}

cvssV3_1

{'score': 8.8, 'vector': 'CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:H'}


Sat, 12 Sep 2026 00:15:00 +0000

Type Values Removed Values Added
Weaknesses CWE-681
References
Metrics threat_severity

None

cvssV3_1

{'score': 7.0, 'vector': 'CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:H'}

threat_severity

Important


Fri, 11 Sep 2026 23:45:00 +0000

Type Values Removed Values Added
Description In the Linux kernel, the following vulnerability has been resolved: iommu/tegra241-cmdqv: Reject a vSID wider than the SID_MATCH field tegra241_vintf_init_vsid() programs the guest-provided vSID into SID_MATCH, whose VIRT_SID field spans bits [20:1] with bit 0 as the match-enable flag. The HW therefore matches only a 20-bit Stream ID. The bound check rejects only virt_sid > UINT_MAX, which admits a value far wider than the field. The write "virt_sid << 1 | 0x1" then drops every bit above 20: a virt_sid of 0x80000000 lands as SID_MATCH = 0x1, a valid match on vSID 0, so the entry aliases the wrong Stream ID. Because vdev->virt_id is guest-controlled, a VMM can trigger it. Validate virt_sid against the field width with FIELD_MAX(), and program the register with FIELD_PREP() so the value and the field stay consistent.
Title iommu/tegra241-cmdqv: Reject a vSID wider than the SID_MATCH field
First Time appeared Linux
Linux linux Kernel
CPEs cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*
Vendors & Products Linux
Linux linux Kernel
References

Subscriptions

Linux Linux Kernel
cve-icon MITRE

Status: PUBLISHED

Assigner: Linux

Published:

Updated: 2026-09-13T06:29:30.075Z

Reserved: 2026-09-11T19:38:34.706Z

Link: CVE-2026-89450

cve-icon Vulnrichment

No data.

cve-icon NVD

Status : Received

Published: 2026-09-11T20:19:25.603

Modified: 2026-09-13T07:17:09.350

Link: CVE-2026-89450

cve-icon Redhat

Severity : Important

Publid Date: 2026-09-11T19:43:16Z

Links: CVE-2026-89450 - Bugzilla

cve-icon OpenCVE Enrichment

Updated: 2026-09-13T04:00:08Z

Weaknesses
  • CWE-681

    Incorrect Conversion between Numeric Types