On Tue, 10 Nov 2020 at 21:47, Eddie James <eajames@xxxxxxxxxxxxx> wrote: > > In the case that the SPI mux isn't set, the transfer_one_message > function returns without finalizing the message. This means that > the transfer never completes, resulting in hung tasks and an > eventual kernel panic. Fix it by finalizing the transfer in this > case. > > Fixes: 9211a441e606 ("spi: fsi: Check mux status before transfers") > Signed-off-by: Eddie James <eajames@xxxxxxxxxxxxx> Reviewed-by: Joel Stanley <joel@xxxxxxxxx> > --- > drivers/spi/spi-fsi.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/drivers/spi/spi-fsi.c b/drivers/spi/spi-fsi.c > index 8a440c7078ef..3920cd3286d8 100644 > --- a/drivers/spi/spi-fsi.c > +++ b/drivers/spi/spi-fsi.c > @@ -477,7 +477,7 @@ static int fsi_spi_transfer_one_message(struct spi_controller *ctlr, > > rc = fsi_spi_check_mux(ctx->fsi, ctx->dev); > if (rc) > - return rc; > + goto error; > > list_for_each_entry(transfer, &mesg->transfers, transfer_list) { > struct fsi_spi_sequence seq; > -- > 2.26.2 >