smatch warning -
drivers/spi/spi-pic32.c:634 pic32_spi_dma_prep() warn: missing error code 'ret'
Currently in case of pic32_spi_dma_config() failure, SUCCESS is returned.
Capture and return the error code in the failure path.
This is based on static analysis only. Compilation tested.
Signed-off-by: Sukrut Bellary <[email protected]>
---
drivers/spi/spi-pic32.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/drivers/spi/spi-pic32.c b/drivers/spi/spi-pic32.c
index f2af5e653f3d..2b1b1eea9c64 100644
--- a/drivers/spi/spi-pic32.c
+++ b/drivers/spi/spi-pic32.c
@@ -630,7 +630,8 @@ static int pic32_spi_dma_prep(struct pic32_spi *pic32s, struct device *dev)
goto out_err;
}
- if (pic32_spi_dma_config(pic32s, DMA_SLAVE_BUSWIDTH_1_BYTE))
+ ret = pic32_spi_dma_config(pic32s, DMA_SLAVE_BUSWIDTH_1_BYTE);
+ if (ret)
goto out_err;
/* DMA chnls allocated and prepared */
--
2.34.1
Sat, May 13, 2023 at 05:26:53AM -0700, Sukrut Bellary kirjoitti:
> smatch warning -
> drivers/spi/spi-pic32.c:634 pic32_spi_dma_prep() warn: missing error code 'ret'
>
> Currently in case of pic32_spi_dma_config() failure, SUCCESS is returned.
> Capture and return the error code in the failure path.
The comment above the pic32_spi_dma_config() call on the caller side suggests
that DMA is optional. With that in mind the current code won't prevent us from
using the driver in PIO mode.
> This is based on static analysis only. Compilation tested.
That's why I think it's incorrect fix. You need to fix smatch.
--
With Best Regards,
Andy Shevchenko