Browse Source

net: cdc_eem: clean up bind error path

Drop bogus call to usb_driver_release_interface() from an error path in
the usbnet bind() callback, which is called during interface probe. At
this point the interface is not bound and usb_driver_release_interface()
returns early.

Also remove the bogus call to clear the interface data, which is owned
by the usbnet driver and would not even have been set by the time bind()
is called.

Signed-off-by: Johan Hovold <johan@kernel.org>
Acked-by: Oliver Neukum <oneukum@suse.com>
Reviewed-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
Johan Hovold 7 years ago
parent
commit
bb5441fc3c
1 changed files with 1 additions and 4 deletions
  1. 1 4
      drivers/net/usb/cdc_eem.c

+ 1 - 4
drivers/net/usb/cdc_eem.c

@@ -83,11 +83,8 @@ static int eem_bind(struct usbnet *dev, struct usb_interface *intf)
 	int status = 0;
 	int status = 0;
 
 
 	status = usbnet_get_endpoints(dev, intf);
 	status = usbnet_get_endpoints(dev, intf);
-	if (status < 0) {
-		usb_set_intfdata(intf, NULL);
-		usb_driver_release_interface(driver_of(intf), intf);
+	if (status < 0)
 		return status;
 		return status;
-	}
 
 
 	/* no jumbogram (16K) support for now */
 	/* no jumbogram (16K) support for now */