Hi Zhang, Thank you for the patch. On Mon. 14 nov. 2022 at 12:13, Zhang Changzhong <zhangchangzhong@xxxxxxxxxx> wrote: > In case of register_candev() fails, clear es58x_dev->netdev[channel_idx] > and add free_candev(). Otherwise es58x_free_netdevs() will unregister > the netdev that has never been registered. > > Fixes: 1dfb6005a60b ("can: etas_es58x: add support for ETAS ES581.4 CAN USB interface") Nitpick, the correct fix tag is: Fixes: 8537257874e9 ("can: etas_es58x: add core support for ETAS ES58X CAN USB interfaces") Aside of that, Acked-by: Vincent Mailhol <mailhol.vincent@xxxxxxxxxx> > Signed-off-by: Zhang Changzhong <zhangchangzhong@xxxxxxxxxx> > --- > drivers/net/can/usb/etas_es58x/es58x_core.c | 5 ++++- > 1 file changed, 4 insertions(+), 1 deletion(-) > > diff --git a/drivers/net/can/usb/etas_es58x/es58x_core.c b/drivers/net/can/usb/etas_es58x/es58x_core.c > index 25f863b..ddb7c57 100644 > --- a/drivers/net/can/usb/etas_es58x/es58x_core.c > +++ b/drivers/net/can/usb/etas_es58x/es58x_core.c > @@ -2091,8 +2091,11 @@ static int es58x_init_netdev(struct es58x_device *es58x_dev, int channel_idx) > netdev->dev_port = channel_idx; > > ret = register_candev(netdev); > - if (ret) > + if (ret) { > + es58x_dev->netdev[channel_idx] = NULL; > + free_candev(netdev); > return ret; > + } > > netdev_queue_set_dql_min_limit(netdev_get_tx_queue(netdev, 0), > es58x_dev->param->dql_min_limit); > -- > 2.9.5 >