Re: [PATCH v2] net: hso: do not call unregister if not registered

From: David Miller
Date: Sat Oct 03 2020 - 20:01:07 EST


From: Greg KH <gregkh@xxxxxxxxxxxxxxxxxxx>
Date: Fri, 2 Oct 2020 13:43:23 +0200

> @@ -2366,7 +2366,8 @@ static void hso_free_net_device(struct hso_device *hso_dev, bool bailout)
>
> remove_net_device(hso_net->parent);
>
> - if (hso_net->net)
> + if (hso_net->net &&
> + hso_net->net->reg_state == NETREG_REGISTERED)
> unregister_netdev(hso_net->net);
>
> /* start freeing */

I really want to get out of the habit of drivers testing the internal
netdev registration state to make decisions.

Instead, please track this internally. You know if you registered the
device or not, therefore use that to control whether you try to
unregister it or not.

Thank you.