]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
net: cdc-phonet: fix data-interface release on probe failure
authorJohan Hovold <johan@kernel.org>
Thu, 18 Mar 2021 15:57:49 +0000 (16:57 +0100)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Tue, 30 Mar 2021 12:45:00 +0000 (14:45 +0200)
[ Upstream commit c79a707072fe3fea0e3c92edee6ca85c1e53c29f ]

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>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/net/usb/cdc-phonet.c

index ff2270ead2e68b8a381ab42f6309d919f8b9ed12..84e0e7f7802977d65d9e5e306823836e7b3977f7 100644 (file)
@@ -406,6 +406,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;
        }