CVE-2026-72142
Description
In the Linux kernel, the following vulnerability has been resolved: i2c: imx: fix locked bus on SMBus block-read of 0 (atomic) SMBus 3.1 6.5.7 allows a Block Read byte count of 0, but the atomic (polling) path rejects it as -EPROTO. Worse, it returns without a NACK+STOP: the next receive cycle has already started, so the target keeps holding SDA and the bus stays stuck until a power cycle for this i2c controller. Reading I2DR to obtain the count likewise arms the next byte on the count > I2C_SMBUS_BLOCK_MAX path, which also returned -EPROTO directly and left the bus held. Handle both: NACK the in-flight dummy byte (TXAK) and extend msgs->len so the existing last-byte handling emits STOP; the dummy byte is discarded. A count of 0 is a valid empty block read; a count above I2C_SMBUS_BLOCK_MAX is still reported as -EPROTO, but only after the bus has been released. The interrupt-driven path has the same flaw from a later commit and is fixed separately, as it carries a different Fixes: tag and stable range.
How to fix
- Linux Linux0f29df3c3d607a9dbc14aed0e45504ced4d2e7ec, 38d4947431b2410850409fda016b2ac9f640a4dd, e3e8b02d4773cfc5ad561d2e5505efde36c6927a, 016ef0f6ca4bc9bf0330ac41bd2ea349759643e3, c882e8cc68fb993700dc21fd6e754001e6297934, 6d2c973926d0612360693bc559be2ffde836151b, 60ed00d46616a9232e42ea7a3e3c0273d7cf7543, cb2fc37857693b55909fb77dc2c87cfbc1cdc476 or later
Affected products
| Product | Affected versions | Fixed in |
|---|---|---|
| Linux Linux | 8e8782c71595a5ad29e234ce6b3d2fce787fb07a ≤ v < 0f29df3c3d607a9dbc14aed0e45504ced4d2e7ec, 8e8782c71595a5ad29e234ce6b3d2fce787fb07a ≤ v < 38d4947431b2410850409fda016b2ac9f640a4dd, 8e8782c71595a5ad29e234ce6b3d2fce787fb07a ≤ v < e3e8b02d4773cfc5ad561d2e5505efde36c6927a, 8e8782c71595a5ad29e234ce6b3d2fce787fb07a ≤ v < 016ef0f6ca4bc9bf0330ac41bd2ea349759643e3, 8e8782c71595a5ad29e234ce6b3d2fce787fb07a ≤ v < c882e8cc68fb993700dc21fd6e754001e6297934, 8e8782c71595a5ad29e234ce6b3d2fce787fb07a ≤ v < 6d2c973926d0612360693bc559be2ffde836151b, 8e8782c71595a5ad29e234ce6b3d2fce787fb07a ≤ v < 60ed00d46616a9232e42ea7a3e3c0273d7cf7543, 8e8782c71595a5ad29e234ce6b3d2fce787fb07a ≤ v < cb2fc37857693b55909fb77dc2c87cfbc1cdc476, 3.16 | 0f29df3c3d607a9dbc14aed0e45504ced4d2e7ec, 38d4947431b2410850409fda016b2ac9f640a4dd, e3e8b02d4773cfc5ad561d2e5505efde36c6927a, 016ef0f6ca4bc9bf0330ac41bd2ea349759643e3, c882e8cc68fb993700dc21fd6e754001e6297934, 6d2c973926d0612360693bc559be2ffde836151b, 60ed00d46616a9232e42ea7a3e3c0273d7cf7543, cb2fc37857693b55909fb77dc2c87cfbc1cdc476 |
Check your version
Choose the product and enter the version you run to see whether it falls in the affected range.
Attack Surface Management
See the assets tied to your domains, the technologies they run and known vulnerabilities in one list.