[PATCH] i3c: master: adi: free the IRQ before unregistering the master

Alexandre Belloni alexandre.belloni at bootlin.com
Wed Sep 30 07:20:54 PDT 2026


On Wed, 23 Sep 2026 08:53:40 +0000, Fan Wu wrote:
> adi_i3c_master_irq() is requested with devm_request_irq(), so it stays
> registered when adi_i3c_master_remove() runs, and the writes masking the
> controller IRQ sources do not synchronize with a handler that is already
> running on another CPU. i3c_master_unregister() then frees the
> struct i3c_dev_desc objects that master->ibi.slots[] still point to, so
> the IBI path in adi_i3c_master_handle_ibi() can dereference freed memory.
> 
> [...]

Applied, thanks!

[1/1] i3c: master: adi: free the IRQ before unregistering the master
      https://git.kernel.org/i3c/c/1c1e2d90aa45

Best regards,

-- 
Alexandre Belloni, co-owner and COO, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com



More information about the linux-i3c mailing list