UBUNTU-CVE-2026-97593: Null Pointer Dereference
In the Linux kernel, the following vulnerability has been resolved: iommu/s390: Fix NULL dereference in iovatophys() with ZPCITABLETYPERFX When using a 5-level translation table via ZPCITABLETYPERFX getrsofromiova() returns NULL when the region-first entry is invalid. Yet in getrtofromiova() the region-second origin rso is not checked to be non-NULL before accessing rso[rsx] leading to a NULL pointer dereference instead of a NULL return when iovatophys() is called on a unmapped IOVA. Fix this by adding the missing NULL check.
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 - Compensating control
Add a NULL check in get_rto_from_iova() before accessing rso[rsx], so that a NULL region-second origin returns NULL instead of causing a NULL pointer dereference when iova_to_phys() is called on an unmapped IOVA.
Event History
Frequently Asked Questions
Which deployments are exposed to this issue?
Exposure requires use of the s390 IOMMU with a 5-level translation table configured as ZPCI_TABLE_TYPE_RFX. The affected path is reached when iova_to_phys() is called for an unmapped IOVA whose region-first entry is invalid.
What condition triggers the failure?
get_rso_from_iova() returns NULL for an invalid region-first entry, and the subsequent code accesses the returned region-second origin without checking it. This causes a NULL pointer dereference rather than returning NULL.
Is a default configuration known to be affected, and is there a documented workaround?
The available data does not state whether the vulnerable 5-level ZPCI_TABLE_TYPE_RFX configuration is enabled by default. It also does not provide a workaround or fixed package versions.