linux/drivers/i3c/master
Jarkko Nikula 19cc576733 i3c: mipi-i3c-hci: Mask ring interrupts before ring stop request
[ Upstream commit 6ca2738174 ]

Bus cleanup path in DMA mode may trigger a RING_OP_STAT interrupt when
the ring is being stopped. Depending on timing between ring stop request
completion, interrupt handler removal and code execution this may lead
to a NULL pointer dereference in hci_dma_irq_handler() if it gets to run
after the io_data pointer is set to NULL in hci_dma_cleanup().

Prevent this my masking the ring interrupts before ring stop request.

Signed-off-by: Jarkko Nikula <jarkko.nikula@linux.intel.com>
Link: https://lore.kernel.org/r/20240920144432.62370-2-jarkko.nikula@linux.intel.com
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
History 2024-12-14 20:04:04 +01:00
..
mipi-i3c-hci i3c: mipi-i3c-hci: Mask ring interrupts before ring stop request 2024-12-14 20:04:04 +01:00
ast2600-i3c-master.c i3c: dw: Remove ibi_capable property 2024-07-26 14:21:29 +02:00
dw-i3c-master.c i3c: dw: Add power management support 2024-07-26 14:21:30 +02:00
dw-i3c-master.h i3c: dw: Add power management support 2024-07-26 14:21:30 +02:00
i3c-master-cdns.c i3c: master: cdns: Fix use after free vulnerability in cdns_i3c_master Driver Due to Race Condition 2024-09-17 16:50:18 +02:00
Kconfig i3c: ast2600: Add AST2600 platform-specific driver 2023-04-28 08:19:01 +02:00
Makefile i3c: ast2600: Add AST2600 platform-specific driver 2023-04-28 08:19:01 +02:00
svc-i3c-master.c i3c: master: svc: Modify enabled_events bit 7:0 to act as IBI enable counter 2024-12-09 10:41:07 +01:00