Commit b1a09b63 authored by Dongliang Mu's avatar Dongliang Mu Committed by Marc Kleine-Budde

can: mcp251x: mcp251x_can_probe(): add missing unregister_candev() in error path

In mcp251x_can_probe(), if mcp251x_gpio_setup() fails, it forgets to
unregister the CAN device.

Fix this by unregistering can device in mcp251x_can_probe().

Fixes: 2d52dabb ("can: mcp251x: add GPIO support")
Signed-off-by: default avatarDongliang Mu <dzm91@hust.edu.cn>
Link: https://lore.kernel.org/all/20221024090256.717236-1-dzm91@hust.edu.cn
[mkl: adjust label]
Signed-off-by: default avatarMarc Kleine-Budde <mkl@pengutronix.de>
parent 3e5b3418
...@@ -1415,11 +1415,14 @@ static int mcp251x_can_probe(struct spi_device *spi) ...@@ -1415,11 +1415,14 @@ static int mcp251x_can_probe(struct spi_device *spi)
ret = mcp251x_gpio_setup(priv); ret = mcp251x_gpio_setup(priv);
if (ret) if (ret)
goto error_probe; goto out_unregister_candev;
netdev_info(net, "MCP%x successfully initialized.\n", priv->model); netdev_info(net, "MCP%x successfully initialized.\n", priv->model);
return 0; return 0;
out_unregister_candev:
unregister_candev(net);
error_probe: error_probe:
destroy_workqueue(priv->wq); destroy_workqueue(priv->wq);
priv->wq = NULL; priv->wq = NULL;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment