can: mcp251xfd: fix an error pointer dereference in probe
Subsystems (5)
PATCH 1/1 can: mcp251xfd: fix an error pointer dereference in probe
When we converted this code to use dev_err_probe() we accidentally removed a return. It means that if devm_clk_get() it will lead to an Oops when we call clk_get_rate() on the next line.
Fixes cf8ee6de2543 ("can: mcp251xfd: mcp251xfd_probe(): use dev_err_probe() to simplify error handling")
Signed-off-by Dan Carpenter <[email protected]>
--- drivers/net/can/spi/mcp251xfd/mcp251xfd-core.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-)
drivers/net/can/spi/mcp251xfd/mcp251xfd-core.c +2 -2
@@ -2885,8 +2885,8 @@ static int mcp251xfd_probe(struct spi_device *spi) clk =devm_clk_get (&spi->dev,NULL );if (IS_ERR (clk)) -dev_err_probe (&spi->dev,PTR_ERR (clk), -"Failed to get Oscillator (clock)!\n" ); +return dev_err_probe (&spi->dev,PTR_ERR (clk), +"Failed to get Oscillator (clock)!\n" ); freq =clk_get_rate (clk);/* Sanity check */
Signature · 1 line
2.30.2
Marc Kleine-Budde
maintainerQuoted 6 lines · Dan Carpenter
When we converted this code to use
dev_err_probe()we accidentally removed a return. It means that ifdevm_clk_get()it will lead to an Oops when we callclk_get_rate()on the next line.Fixes cf8ee6de2543 ("can: mcp251xfd: mcp251xfd_probe(): use dev_err_probe() to simplify error handling")Signed-off-by Dan Carpenter <[email protected]>
Good catch, found that yesterday, too, but haven't posted it here.
Marc
Signature · 4 lines
Pengutronix e.K. | Marc Kleine-Budde | Embedded Linux | https://www.pengutronix.de | Vertretung West/Dortmund | Phone: +49-231-2826-924 | Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-5555 |
Quoted 6 lines · Dan Carpenter
When we converted this code to use
dev_err_probe()we accidentally removed a return. It means that ifdevm_clk_get()it will lead to an Oops when we callclk_get_rate()on the next line.Fixes cf8ee6de2543 ("can: mcp251xfd: mcp251xfd_probe(): use dev_err_probe() to simplify error handling")Signed-off-by Dan Carpenter <[email protected]>
Reviewed-by Manivannan Sadhasivam <[email protected]>
Thanks,
Mani
Quoted 22 lines
--- drivers/net/can/spi/mcp251xfd/mcp251xfd-core.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-)drivers/net/can/spi/mcp251xfd/mcp251xfd-core.c +2
-2@@ -2885,8 +2885,8 @@ static int mcp251xfd_probe(struct spi_device *spi) clk =devm_clk_get (&spi->dev,NULL );if (IS_ERR (clk)) -dev_err_probe (&spi->dev,PTR_ERR (clk), -"Failed to get Oscillator (clock)!\n" ); +return dev_err_probe (&spi->dev,PTR_ERR (clk), +"Failed to get Oscillator (clock)!\n" ); freq =clk_get_rate (clk);/* Sanity check */ Signature · 1 line
2.30.2