UBUNTU-CVE-2026-90424: Medium severity ubuntu/linux-hwe-edge vulnerability
In the Linux kernel, the following vulnerability has been resolved: iommu/tegra241-cmdqv: Fix VINTF0 leak on the init-failure path tegra241cmdqvinitstructures() allocates VINTF0 with kzallocobj(), inits it, and preallocates its logical VCMDQs. Two of its error paths leak. When tegra241cmdqvinitvintf() fails it returns before VINTF0 reaches the cmdqv->vintfs[] array, so the devres unwind on probe failure cannot reach it; free it directly there. A later VCMDQ preallocation failure instead leaves VINTF0 published, and so this time the unwind does reach tegra241cmdqvremovevintf(), which then frees it from vintf->hypown. But tegra241vintfhwinit() sets that flag only afterward, from a HW read-back, so the still-uninited VINTF0 reads as guest-owned and leaks, with mutexdestroy() and idadestroy() run on fields it never set up. Decide ownership from vintf->idx instead, the index assigned when its id is allocated: idx 0 is the kernel-owned VINTF0, while idx >= 1 marks a guest VINTF. So the in-kernel free decision in tegra241cmdqvremovevintf() and tegra241vintffreelvcmdq() now keys on idx too, and hypown stays a pure HW-readback state.
Affected Software
Remediation
Recommended actions to resolve this vulnerability, in priority order.
- Upgrade
Upgrade
ubuntu/linux-hwe-7.0to a version that resolves this vulnerability.Fixed in 7.0.0-42.42~24.04.1 - Upgrade
Upgrade
ubuntu/linux-riscv-7.0to a version that resolves this vulnerability.Fixed in 7.0.0-42.42.1~24.04.1 - Upgrade
Upgrade
ubuntu/linuxto a version that resolves this vulnerability.Fixed in 7.0.0-42.42 - Upgrade
Upgrade
ubuntu/linux-awsto a version that resolves this vulnerability.Fixed in 7.0.0-1016.17 - Upgrade
Upgrade
ubuntu/linux-gcpto a version that resolves this vulnerability.Fixed in 7.0.0-1016.18 - Upgrade
Upgrade
ubuntu/linux-ibmto a version that resolves this vulnerability.Fixed in 7.0.0-1017.17 - Upgrade
Upgrade
ubuntu/linux-oem-7.0to a version that resolves this vulnerability.Fixed in 7.0.0-1017.17 - Upgrade
Upgrade
ubuntu/linux-oracleto a version that resolves this vulnerability.Fixed in 7.0.0-1015.16 - Upgrade
Upgrade
ubuntu/linux-riscvto a version that resolves this vulnerability.Fixed in 7.0.0-42.42.1
Event History
Frequently Asked Questions
Which systems are exposed to this issue?
The issue is relevant to Ubuntu systems using one of the listed kernel packages where the Tegra241 CMDQV IOMMU driver is initialized. The provided data does not identify affected hardware models, configurations, or package versions.
When can the leak occur?
The leak occurs only on initialization or probe failure paths: when VINTF initialization fails before the object is published, or when logical VCMDQ preallocation fails after it is published but before its hardware ownership state has been read back.
Does exploitation require an attacker to trigger a successful device operation?
No successful device operation is described. The affected paths are error-handling paths during driver initialization, so triggering an initialization failure is the relevant condition described by the data.
What can be checked to determine whether a system has encountered the issue?
The data identifies leaked VINTF0 allocations and incomplete cleanup during Tegra241 CMDQV initialization failures, but does not provide log messages, counters, or other detection indicators.