Messages in this thread | | | Date | Fri, 21 Jul 2023 19:43:56 -0700 | From | Bjorn Andersson <> | Subject | Re: [PATCH] firmware: arm_scmi: Fix chan_free cleanup on SMC |
| |
On Wed, Jul 19, 2023 at 06:35:33PM +0100, Cristian Marussi wrote: > SCMI transport based on SMC can optionally use an additional IRQ to signal > message completion; the associated ISR is currently allocated using devres > but the core SCMI stack, on shutdown, will call .chan_free() well before > any managed cleanup is invoked by devres and, as a consequence, the arrival > of a late reply to an in-flight pending transaction could still trigger the > ISR well after the SCMI core has cleaned up the channels, with unpleasant > results. > > Inhibit further message processing on the IRQ path by explicitly freeing > the IRQ inside .chan_free() callback itself. > > Fixes: dd820ee21d5e ("firmware: arm_scmi: Augment SMC/HVC to allow optional interrupt") > Reported-by: Bjorn Andersson <andersson@kernel.org> > Signed-off-by: Cristian Marussi <cristian.marussi@arm.com> > ---
Reviewed-by: Bjorn Andersson <andersson@kernel.org>
Regards, Bjorn
| |