usbnet:cdc-phonet: remove usb_get/put_dev in .probe and .disconnect
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>
This commit is contained in:
parent
5c2f05139a
commit
50e7d15391
|
@ -394,7 +394,7 @@ int usbpn_probe(struct usb_interface *intf, const struct usb_device_id *id)
|
||||||
SET_NETDEV_DEV(dev, &intf->dev);
|
SET_NETDEV_DEV(dev, &intf->dev);
|
||||||
|
|
||||||
pnd->dev = dev;
|
pnd->dev = dev;
|
||||||
pnd->usb = usb_get_dev(usbdev);
|
pnd->usb = usbdev;
|
||||||
pnd->intf = intf;
|
pnd->intf = intf;
|
||||||
pnd->data_intf = data_intf;
|
pnd->data_intf = data_intf;
|
||||||
spin_lock_init(&pnd->tx_lock);
|
spin_lock_init(&pnd->tx_lock);
|
||||||
|
@ -440,7 +440,6 @@ out:
|
||||||
static void usbpn_disconnect(struct usb_interface *intf)
|
static void usbpn_disconnect(struct usb_interface *intf)
|
||||||
{
|
{
|
||||||
struct usbpn_dev *pnd = usb_get_intfdata(intf);
|
struct usbpn_dev *pnd = usb_get_intfdata(intf);
|
||||||
struct usb_device *usb = pnd->usb;
|
|
||||||
|
|
||||||
if (pnd->disconnected)
|
if (pnd->disconnected)
|
||||||
return;
|
return;
|
||||||
|
@ -449,7 +448,6 @@ static void usbpn_disconnect(struct usb_interface *intf)
|
||||||
usb_driver_release_interface(&usbpn_driver,
|
usb_driver_release_interface(&usbpn_driver,
|
||||||
(pnd->intf == intf) ? pnd->data_intf : pnd->intf);
|
(pnd->intf == intf) ? pnd->data_intf : pnd->intf);
|
||||||
unregister_netdev(pnd->dev);
|
unregister_netdev(pnd->dev);
|
||||||
usb_put_dev(usb);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static struct usb_driver usbpn_driver = {
|
static struct usb_driver usbpn_driver = {
|
||||||
|
|
Loading…
Reference in New Issue