diff --git a/drivers/net/usb/lan78xx.c b/drivers/net/usb/lan78xx.c index 42fe7753ff76..b0efaf56d78f 100644 --- a/drivers/net/usb/lan78xx.c +++ b/drivers/net/usb/lan78xx.c @@ -2905,7 +2905,8 @@ static int lan78xx_open(struct net_device *net) done: mutex_unlock(&dev->dev_mutex); - usb_autopm_put_interface(dev->intf); + if (ret < 0) + usb_autopm_put_interface(dev->intf); return ret; }