Description (CNA)
In the Linux kernel, the following vulnerability has been resolved: i2c: imx: preserve error state in block data length handler When a block read returns an invalid length, zero or >I2C_SMBUS_BLOCK_MAX, the length handler sets the state to IMX_I2C_STATE_FAILED. However, i2c_imx_master_isr() unconditionally overwrites this with IMX_I2C_STATE_READ_CONTINUE, causing an endless read loop that overruns buffers and crashes the system. Guard the state transition to preserve error states set by the length handler.
Affected (CNA)
| Vendor / product | Versions |
|---|---|
| Linux / Linux | affected 5f5c2d4579ca6836f5604cca979debd68ecfe23f before 3f9b508b3eecc00a243edf320bd83834d6a9b482; affected 5f5c2d4579ca6836f5604cca979debd68ecfe23f before b126097b0327437048bd045a0e4d273dea2910dd |
| Linux / Linux | affected 6.13; unaffected 0 before 6.13; unaffected 6.18.10 through 6.18.*; unaffected 6.19 through * |
CWE
No CWE identifiers supplied.