Skip to main content

Linux Kernel EUVDEUVD-2026-58892

| CVE-2026-72134 HIGH
2026-08-15 416baaa9-dc9f-4396-8d5f-8c081fb06d67 GHSA-pv8g-5qg3-q63w
7.8
CVSS 3.1 · Vendor: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
Share

Severity by source

Vendor (416baaa9-dc9f-4396-8d5f-8c081fb06d67) PRIMARY
7.8 HIGH
AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
vuln.today AI
7.8 HIGH

Local access required to trigger SPI transfers (AV:L, PR:L); DMA failure is deterministic given absent firmware so no complexity (AC:L); all impacts High due to silent data corruption and TPM device loss.

3.1 AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
4.0 AV:L/AC:L/AT:P/PR:L/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N
SUSE
4.4 MEDIUM
AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:L/A:L
Red Hat
5.5 MEDIUM
qualitative

Primary rating from Vendor (416baaa9-dc9f-4396-8d5f-8c081fb06d67).

CVSS VectorVendor: 416baaa9-dc9f-4396-8d5f-8c081fb06d67

Attack Vector
Local
Attack Complexity
Low
Privileges Required
Low
User Interaction
None
Scope
Unchanged
Confidentiality
High
Integrity
High
Availability
High

Lifecycle Timeline

5
Analysis Generated
Aug 17, 2026 - 07:09 vuln.today
CVSS changed
Aug 17, 2026 - 06:22 NVD
7.8 (HIGH)
Patch available
Aug 15, 2026 - 07:20 EUVD
CVE Published
Aug 15, 2026 - 06:21 cve.org
HIGH 7.8
CVE Published
Aug 15, 2026 - 06:21 cve.org
UNKNOWN (no severity yet)

DescriptionCVE.org

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

spi: imx: reconfigure for PIO when DMA cannot be started

When spi_imx_can_dma() selects DMA, the ECSPI is configured for DMA: spi_imx_setupxfer() sets CTRL.SMC and clears dynamic_burst, and spi_imx_dma_transfer() programs the dynamic-burst BURST_LENGTH and the SDMA watermarks.

If the DMA descriptor cannot be prepared (dmaengine_prep_slave_single() returns NULL), the transfer is failed with SPI_TRANS_FAIL_NO_START and falls back to PIO. The dynamic-burst DMA path uses its own bounce buffers instead of the SPI core's mapping, so xfer->{tx,rx}_sg_mapped are not set and the core's DMA->PIO retry is skipped; the driver falls back to PIO internally. But none of the DMA-mode configuration is undone, so the PIO transfer runs with CTRL.SMC set, the wrong burst length and dynamic_burst cleared, and the transferred data is corrupted.

This is easily hit on i.MX8MP boards that describe ECSPI DMA in the device tree but run SDMA on ROM firmware (no external sdma-imx7d.bin): every ECSPI DMA prepare fails. An Infineon SLB9670 TPM on ECSPI1 then returns shifted TPM2_GetCapability data, is flagged "field failure mode", /dev/tpmrm0 is never created.

Set controller->fallback before re-running spi_imx_setupxfer() so the ECSPI is reconfigured exactly like a normal PIO transfer. With controller->fallback set, spi_imx_setupxfer() sees spi_imx_can_dma() return false, so it clears spi_imx->usedma and reprograms the controller (clears CTRL.SMC, restores dynamic_burst and the PIO burst length). No explicit spi_imx->usedma = false is needed: setupxfer() already updates it from the can_dma() result.

AnalysisAI

Data corruption in the Linux kernel's spi-imx driver causes SPI bus transfers to produce malformed data when DMA initialization fails and the driver incorrectly falls back to PIO mode without resetting the ECSPI hardware configuration. Systems running NXP i.MX SoCs with ECSPI DMA declared in the device tree but without the sdma-imx7d.bin SDMA firmware are deterministically and silently affected on every transfer. Downstream security-critical devices connected to the affected SPI bus - such as the Infineon SLB9670 TPM - receive corrupted responses that can prevent device initialization entirely, eliminating TPM-based security services; no public exploit has been identified at time of analysis.

Technical ContextAI

The ECSPI (Enhanced Configurable SPI) controller on NXP i.MX SoC families, including i.MX8MP, supports both DMA-driven and programmed I/O (PIO) transfer modes selected dynamically by the spi-imx kernel driver via spi_imx_can_dma(). When DMA is selected, the driver configures the ECSPI hardware with DMA-specific settings: CTRL.SMC is set, dynamic_burst is cleared, and SDMA watermarks are programmed. If the SDMA engine's dmaengine_prep_slave_single() returns NULL - as it does reliably when running on ROM firmware without the external sdma-imx7d.bin file - the driver issues SPI_TRANS_FAIL_NO_START and falls back internally to PIO. However, the ECSPI hardware remains in its DMA configuration because no reconfiguration is performed on the failure path. Subsequent PIO transfers run against this misconfigured controller, producing shifted or corrupted data. The fix sets controller->fallback before re-invoking spi_imx_setupxfer(), causing spi_imx_can_dma() to return false, clearing usedma, and restoring the correct PIO burst length and CTRL settings. CWE is unassigned by NVD; the root cause is analogous to CWE-459 (Incomplete Cleanup) - a missing hardware state reset on an error path.

RemediationAI

Upgrade to Linux kernel 7.1.5 or 7.2-rc1 or later, which contains the fix via stable commits 245404c26563aafb36aafb01298f148db1851be3 (https://git.kernel.org/stable/c/245404c26563aafb36aafb01298f148db1851be3) and 40dee2d3e9994aed9efe7bed40eb0e4d38d5a25c (https://git.kernel.org/stable/c/40dee2d3e9994aed9efe7bed40eb0e4d38d5a25c). As a compensating control, install sdma-imx7d.bin into the kernel firmware search path so that SDMA DMA transfers succeed and the fallback path is never triggered; this eliminates the corruption without a kernel update but requires firmware distribution. Alternatively, remove ECSPI DMA channel entries from the device tree to force PIO-only operation, which eliminates the faulty fallback entirely; this may reduce SPI throughput on high-bandwidth workloads but is otherwise transparent.

Vendor StatusVendor

SUSE

Severity: Moderate
Product Status
SUSE Linux Enterprise Desktop 15 SP7 Not-Affected
SUSE Linux Enterprise Desktop 15 SP7 Not-Affected
SUSE Linux Enterprise High Availability Extension 15 SP7 Not-Affected
SUSE Linux Enterprise High Availability Extension 15 SP7 Not-Affected
SUSE Linux Enterprise High Availability Extension 16.0 Not-Affected

Share

EUVD-2026-58892 vulnerability details – vuln.today

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy