OSDN Git Service

usbnet:cdc-phonet: remove usb_get/put_dev in .probe and .disconnect
authortom.leiming@gmail.com <tom.leiming@gmail.com>
Mon, 11 Jun 2012 15:19:41 +0000 (15:19 +0000)
committerDavid S. Miller <davem@davemloft.net>
Wed, 13 Jun 2012 01:50:23 +0000 (18:50 -0700)
usb_device is parent device of usb_interface in the view of driver
model, so its reference count is always held during .probe/.disconnect
of usb_interface instance.

This patch just removes the unnecessay usb_get/put_dev.

Signed-off-by: Ming Lei <tom.leiming@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/usb/cdc-phonet.c

index d848d4d..187c144 100644 (file)
@@ -394,7 +394,7 @@ int usbpn_probe(struct usb_interface *intf, const struct usb_device_id *id)
        SET_NETDEV_DEV(dev, &intf->dev);
 
        pnd->dev = dev;
-       pnd->usb = usb_get_dev(usbdev);
+       pnd->usb = usbdev;
        pnd->intf = intf;
        pnd->data_intf = data_intf;
        spin_lock_init(&pnd->tx_lock);
@@ -440,7 +440,6 @@ out:
 static void usbpn_disconnect(struct usb_interface *intf)
 {
        struct usbpn_dev *pnd = usb_get_intfdata(intf);
-       struct usb_device *usb = pnd->usb;
 
        if (pnd->disconnected)
                return;
@@ -449,7 +448,6 @@ static void usbpn_disconnect(struct usb_interface *intf)
        usb_driver_release_interface(&usbpn_driver,
                        (pnd->intf == intf) ? pnd->data_intf : pnd->intf);
        unregister_netdev(pnd->dev);
-       usb_put_dev(usb);
 }
 
 static struct usb_driver usbpn_driver = {