CVE-2026-98475: s390/cmf: Fix virtual vs physical address confusion
In the Linux kernel, the following vulnerability has been resolved:
s390/cmf: Fix virtual vs physical address confusion
The measurement block address is an absolute address. Define the associated schibconfig and schib fields as dma64t to enable automatic detection of incorrect assignments. Also add the missing virttodma64() translation.
Without this fix, a wrong address will be used by firmware when storing extended format channel measurement data on kernels built with CONFIGRANDOMIZEIDENTITYBASE=y.
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 - Configuration
Add the missing virt_to_dma64() translation and define the associated schib_config and schib fields as dma64_t to prevent virtual addresses from being used where absolute DMA addresses are required.
Linux kernel s390/cmf virt_to_dma64() translation and measurement-block address fields = Use virt_to_dma64() and define the associated schib_config and schib fields as dma64_t
Event History
Frequently Asked Questions
Which systems are exposed to this issue?
The issue affects Linux kernel systems on s390 that use extended format channel measurement data and are built with CONFIG_RANDOMIZE_IDENTITY_BASE=y. The incorrect address is used by firmware when it stores that measurement data.
What condition triggers the incorrect firmware address?
The vulnerable condition is the confusion between virtual and physical addresses for the measurement block address. It occurs when the required virtual-to-DMA address translation is missing.