CVE-2026-98207
mmc: spi: reset bytes_xfered before retrying CRC failures
No known exploitation. EPSS puts it in the 7th percentile. Fixed versions are out.
What to do
Find your product and version, then upgrade to the build on the right.
- LinuxAffected: ≥ 061c6c847eeb11743e489a16e907b41c6f9042b6, < 7d2f0ec16b300645f20435a6c3827b15e01419afUpgrade to: 7d2f0ec16b300645f20435a6c3827b15e01419afAffected: ≥ 061c6c847eeb11743e489a16e907b41c6f9042b6, < d1acf4b9f6e9697406ce84ee9acfb92e094d5c7aUpgrade to: d1acf4b9f6e9697406ce84ee9acfb92e094d5c7aAffected: ≥ 061c6c847eeb11743e489a16e907b41c6f9042b6, < 0b8c8504593409954ed1a60db4e437d814e04023Upgrade to: 0b8c8504593409954ed1a60db4e437d814e04023Affected: ≥ 061c6c847eeb11743e489a16e907b41c6f9042b6, < da4929ee78ee701c3717543840798fedff66c430Upgrade to: da4929ee78ee701c3717543840798fedff66c430 + 4 more branchesStated by: CVE record
Versions as the sources state them. Full version matrix after sign-in
What it is
From the CVE record
In the Linux kernel, the following vulnerability has been resolved: mmc: spi: reset bytes_xfered before retrying CRC failures mmc_spi_data_do() updates data->bytes_xfered after each block has been transferred successfully. If a later block in the same data request fails with a CRC error, data->bytes_xfered may therefore contain the number of bytes completed before the failing block. mmc_spi_request() has a private recovery path for such CRC failures. It sends STOP_TRANSMISSION, clears data->error and jumps back to crc_recover to issue the same command and data request again. However, it does not clear data->bytes_xfered before the retry. If the retry succeeds, the request is completed with the bytes from the failed attempt still included in data->bytes_xfered. For a multi-block request this can make the completed request report more bytes than were transferred by the successful retry, and can even exceed the request size when most blocks completed before the CRC error. This is most likely to be observed on MMC-over-SPI systems where long multi-block transfers occasionally hit a data CRC error but the mmc_spi-internal retry succeeds. The data itself is retried, but the completion accounting is not. Clear data->bytes_xfered together with data->error before repeating the request so the final completion reports only the bytes transferred by the successful attempt.
In plain language
No plain-language summary for this CVE yet.
Exploitation
Where each signal puts this CVE on the scale from published to confirmed exploited.
- CISA KEV
Not in the catalog. CISA has not confirmed exploitation.
- Public exploits
No public exploit or proof of concept found in the sources we track.
- EPSS
0.2% chance of exploitation activity in the next 30 days, which ranks it in the 7th percentile of scored CVEs.
Exploit Prediction Scoring System, FIRST.org. A probability, not a confirmation.
Lifecycle
2 events over 0 days, from the signal feeds we watch.
- Publishedrecord updated
Affected products
Sources
References in the record
- git.kernel.org/stable/c/7d2f0ec16b300645f20435a6c3827b15e01419af
- git.kernel.org/stable/c/d1acf4b9f6e9697406ce84ee9acfb92e094d5c7a
- git.kernel.org/stable/c/0b8c8504593409954ed1a60db4e437d814e04023
And 5 more references. See all after sign-in
In the news
Watch the software you run.
My Stack ranks new CVEs for your products by real-world exploitation, so the next serious one reaches you without reading every advisory.
We'll flag the next CVE, public exploit or patch for Linux, not every advisory.
A free account adds
- The full version matrix and every affected product
- Exploit links, proofs of concept and Metasploit modules
- Email alerts for the products you watch
- The same data over REST API, MCP and CLI