Description
In the Linux kernel, the following vulnerability has been resolved: i3c: master: svc: Prevent IRQ storm from false SLVSTART on NPCM845 On NPCM845, when a target on the I3C bus gets stuck holding SDA low, the controller reports a false Master Request (MR) in-band interrupt event. The driver handles this by emitting a STOP condition to restore the bus. However, the hardware quirk SVC_I3C_QUIRK_FALSE_SLVSTART indicates that emitting a STOP condition may spuriously set the SLVSTART interrupt status bit. In the Master Request case, this creates a feedback loop: the STOP triggers a new SLVSTART event, the IRQ handler fires again, the controller still reports an MR type, another STOP is emitted, and the cycle repeats indefinitely, resulting in an IRQ storm that can lock up the CPU. Clear the SLVSTART status bit explicitly after emitting the STOP in the Master Request IBI handler when the SVC_I3C_QUIRK_FALSE_SLVSTART quirk is set. This breaks the feedback loop without affecting normal SLVSTART processing, which is already guarded in the top-level IRQ handler by checking that MSTATUS is in SLVREQ state.
Affected products
Version statuses are supplied by the assigning organization. Consult the original record for detailed ranges and platform conditions.
Linux Linux
Default version status: unaffected
1ea4653cff35c29d1dd0b14ad9c8245e7318f337 to < 335f72b1f9bbcf0f4cc5a505443b15f1af563b4faffected0430bf9bc1ac068c8b8c540eb93e5751872efc51 to < e9b139c4684ed8593a0b779ca02ea05f460b2eecaffected0430bf9bc1ac068c8b8c540eb93e5751872efc51 to < 1effa3adfe53cb2bb28bf5640a676b791d5ab405affected30748ce7e156f221fb91689b338a0d7df77b732aaffectedf2985a1de6f53abbc42c7a696ee6ba8bdecc9426affected0541822045ae043d62c941ca31fa76871e436b5eaffectedd231fb443d8d4042f0dd705b93beba8c916a7344affected6.12.31 to < 6.12.114affected5.15.185 to < 5.16affected6.1.141 to < 6.2affected6.6.93 to < 6.7affected6.14.9 to < 6.15affected
Linux Linux
Default version status: affected
6.15affected0 to < 6.15unaffected6.12.114 to ≤ 6.12.*unaffected6.18.53 to ≤ 6.18.*unaffected7.2 to ≤ *unaffected