summaryrefslogtreecommitdiff
path: root/drivers/net/usb
diff options
context:
space:
mode:
authorJohan Hovold <johan@kernel.org>2021-03-18 18:57:49 +0300
committerDavid S. Miller <davem@davemloft.net>2021-03-19 05:45:37 +0300
commitc79a707072fe3fea0e3c92edee6ca85c1e53c29f (patch)
tree79e1393af9cc104c0368c9f47c60ec1fe53049ad /drivers/net/usb
parent84f4aced67b102c2f2631c2a48332fcabc826ed2 (diff)
downloadlinux-c79a707072fe3fea0e3c92edee6ca85c1e53c29f.tar.xz
net: cdc-phonet: fix data-interface release on probe failure
Set the disconnected flag before releasing the data interface in case netdev registration fails to avoid having the disconnect callback try to deregister the never registered netdev (and trigger a WARN_ON()). Fixes: 87cf65601e17 ("USB host CDC Phonet network interface driver") Signed-off-by: Johan Hovold <johan@kernel.org> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/usb')
-rw-r--r--drivers/net/usb/cdc-phonet.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/net/usb/cdc-phonet.c b/drivers/net/usb/cdc-phonet.c
index 02e6bbb17b15..8d1f69dad603 100644
--- a/drivers/net/usb/cdc-phonet.c
+++ b/drivers/net/usb/cdc-phonet.c
@@ -387,6 +387,8 @@ static int usbpn_probe(struct usb_interface *intf, const struct usb_device_id *i
err = register_netdev(dev);
if (err) {
+ /* Set disconnected flag so that disconnect() returns early. */
+ pnd->disconnected = 1;
usb_driver_release_interface(&usbpn_driver, data_intf);
goto out;
}