usb_port_resume() calls pm_runtime_get_sync() that increments the reference counter. In case of failure, decrement the reference count and return the error. Signed-off-by: Aditya Pakki <pakki001@xxxxxxx> --- drivers/usb/core/hub.c | 1 + 1 file changed, 1 insertion(+) diff --git a/drivers/usb/core/hub.c b/drivers/usb/core/hub.c index b1e14beaac5f..a9231f27144e 100644 --- a/drivers/usb/core/hub.c +++ b/drivers/usb/core/hub.c @@ -3542,6 +3542,7 @@ int usb_port_resume(struct usb_device *udev, pm_message_t msg) if (status < 0) { dev_dbg(&udev->dev, "can't resume usb port, status %d\n", status); + pm_runtime_put_sync(&port_dev->dev); return status; } } -- 2.25.1