Received: by 2002:a05:6902:102b:0:0:0:0 with SMTP id x11csp850919ybt; Sun, 14 Jun 2020 01:55:17 -0700 (PDT) X-Google-Smtp-Source: ABdhPJyeb8HlblqCfKCGSv+HESgLRSPxXmHucm0TygTViWb11yhWacdVn/iS3bNCwNPAhSO8VjY4 X-Received: by 2002:a17:906:39b:: with SMTP id b27mr20342517eja.421.1592124917512; Sun, 14 Jun 2020 01:55:17 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1592124917; cv=none; d=google.com; s=arc-20160816; b=GwrF9FBTkihGNI4rr/9X4TkzJ78p8pSTWdfDw7IDsXsPmULP6bfX8DRCYnW/9GBwuy t5nvTAW9KRSN8fn/R2wR4xkefD6ydAAFN20sSYapAvnZ80wKx3GBsYlmTnUTPVJw3z1f bCBwb+lt1c2VPiP+XeANQ0rgWZQHCI114SUXptMgfKLOOqpRx25/KHNPD+4IuvubXWeY YdlV6cVK4rmxkoDW9jQCn62NSiHhCJnJKjJW5oobx6cYoHbCXUUmnz029g8DQ+OMM2ig g3h5nWED9BUT+yFs6D5vf4R0b14oo+EZRLlePj4iVtd+bgpTIlYqpiVVTb3xAbwhQh7w ncOA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding :content-language:in-reply-to:mime-version:user-agent:date :message-id:from:references:cc:to:subject:dkim-signature; bh=zRg9XKIL4vBu4icocKftZKBDvYCe4QXeJ3tHeratzYk=; b=h595DzcWJjtpEkwiXIjEQgSElIUrIdCWpQcCk8KDp39ANH0hIyHzCWKzxmvCwUeCFr F3xcVV2NPpicXw/tDFIhYx0J4pPjgYcJCMSOSaJc1MjraBDFwDoZ9jmMEZUuYg4kc+6+ xN6Sw10279jvRnC2V+1xaAwVUiAYbyPl2SMteAJ1ngz5Rxii5hx3hpUaXp/P+k1bmvOf bRP3LzJSoFUxqIIAPPFL9Z2z879y7hRA5Cqj/n/0Afp0L3+R7584y0ncZ/bxazJIm5TK IyGC2vKmxI3Hiuh9evali4c+Gj6Lq7bR/wvmlXEh+MKE8PldcVlT1tHHv0VvB+s1+Dn9 YrqA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@cogentembedded-com.20150623.gappssmtp.com header.s=20150623 header.b=UDLnelPf; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id do15si11439562ejc.430.2020.06.14.01.54.31; Sun, 14 Jun 2020 01:55:17 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@cogentembedded-com.20150623.gappssmtp.com header.s=20150623 header.b=UDLnelPf; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726826AbgFNIuZ (ORCPT + 99 others); Sun, 14 Jun 2020 04:50:25 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:47974 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726755AbgFNIuZ (ORCPT ); Sun, 14 Jun 2020 04:50:25 -0400 Received: from mail-lf1-x144.google.com (mail-lf1-x144.google.com [IPv6:2a00:1450:4864:20::144]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id CA79AC03E96F for ; Sun, 14 Jun 2020 01:50:24 -0700 (PDT) Received: by mail-lf1-x144.google.com with SMTP id a26so3315496lfj.13 for ; Sun, 14 Jun 2020 01:50:24 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cogentembedded-com.20150623.gappssmtp.com; s=20150623; h=subject:to:cc:references:from:message-id:date:user-agent :mime-version:in-reply-to:content-language:content-transfer-encoding; bh=zRg9XKIL4vBu4icocKftZKBDvYCe4QXeJ3tHeratzYk=; b=UDLnelPfwlf525l+MyBjVDfxPBd2Oe89tkH5Gi/pAQNqFNVnQuBubyBZijjlGBtnJR VF2YE93Btypk75ygsyas50iz61OirOjcoNmrpTPjnZ0MVJtzkTrxaUBpjkP0jDxfIP0f FfvFr1xZlC1NaIID0JMIoVcAEkUQs0ECam5XakY7UIgiQR9mzYtyFJai1wAXympJNwy7 G3ca8HzdwHUjS4hXr5ni2T6RNvqznH5tFxR6UhC6b4Lqi/oFnt2MKeSGhAH4j4IVFSGi gx+hLFnie7/jlzvJJiG+AaC2+6PDctR7ay0roquujQ8wAsevGKxHtwoc0cAl43JLHEvf ZAEg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:subject:to:cc:references:from:message-id:date :user-agent:mime-version:in-reply-to:content-language :content-transfer-encoding; bh=zRg9XKIL4vBu4icocKftZKBDvYCe4QXeJ3tHeratzYk=; b=TkxhecGziUX/rhSCz0DqdluzfWl+HeHBmbCArK5/Pmb55IQBDtEnJeqvrJc5iolsJx bfQSdhxZvkmwU6tzpcwjMbDhD3LD+PgJCrR9EGvp01iw1/wjgT2TjmL0B/NrHYAiuXWu pPkz2dtfph/PEwHUoYqbMZTttFPJydIhbg7tqEK1crGiibHPZB68XWVBRbPbDZ2B04cb IDpEiJTFQHlVaB9cMdACVLwDaCcP38v+TTFe4CEhMMWNxw6KrsttRVor7b89L0sSoNK3 Apb86XKqyAfPkEWqgkaKTiPxUsYkTndwylXHUmlZARKxuBADcX/ifoe6oRKJU0udYTlI j5Hg== X-Gm-Message-State: AOAM533aiK8bqqxprqjD8eHQL6dzONgP77OLluaBT+4YLtfRMEHtR2xD ADYgzwYVEG5FWmUwbYLIMZgfxmhoo7C7uA== X-Received: by 2002:a05:6512:3089:: with SMTP id z9mr601823lfd.83.1592124623089; Sun, 14 Jun 2020 01:50:23 -0700 (PDT) Received: from ?IPv6:2a00:1fa0:42e0:5405:a560:8954:33ef:54e2? ([2a00:1fa0:42e0:5405:a560:8954:33ef:54e2]) by smtp.gmail.com with ESMTPSA id n21sm3166415ljj.97.2020.06.14.01.50.21 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Sun, 14 Jun 2020 01:50:22 -0700 (PDT) Subject: Re: [PATCH] usb: dwc3: pci: Fix reference count leak in dwc3_pci_resume_work To: Aditya Pakki Cc: kjlu@umn.edu, wu000273@umn.edu, Felipe Balbi , Greg Kroah-Hartman , linux-usb@vger.kernel.org, linux-kernel@vger.kernel.org References: <20200614031525.128556-1-pakki001@umn.edu> From: Sergei Shtylyov Message-ID: <2e8e923c-3f3d-29ff-6abf-ae333b81bd45@cogentembedded.com> Date: Sun, 14 Jun 2020 11:50:18 +0300 User-Agent: Mozilla/5.0 (Windows NT 6.3; WOW64; rv:68.0) Gecko/20100101 Thunderbird/68.9.0 MIME-Version: 1.0 In-Reply-To: <20200614031525.128556-1-pakki001@umn.edu> Content-Type: text/plain; charset=utf-8; format=flowed Content-Language: en-US Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Hello! On 14.06.2020 6:15, Aditya Pakki wrote: > dwc3_pci_resume_work() calls pm_runtime_get_sync() that increments > the reference counter. In case of failure, decrement the reference > count and return the error. In this case you still return nothing. > > Signed-off-by: Aditya Pakki > --- > drivers/usb/dwc3/dwc3-pci.c | 4 +++- > 1 file changed, 3 insertions(+), 1 deletion(-) > > diff --git a/drivers/usb/dwc3/dwc3-pci.c b/drivers/usb/dwc3/dwc3-pci.c > index b67372737dc9..96c05b121fac 100644 > --- a/drivers/usb/dwc3/dwc3-pci.c > +++ b/drivers/usb/dwc3/dwc3-pci.c > @@ -206,8 +206,10 @@ static void dwc3_pci_resume_work(struct work_struct *work) > int ret; > > ret = pm_runtime_get_sync(&dwc3->dev); > - if (ret) > + if (ret) { > + pm_runtime_put_sync_autosuspend(&dwc3->dev); > return; > + } > > pm_runtime_mark_last_busy(&dwc3->dev); > pm_runtime_put_sync_autosuspend(&dwc3->dev); MBR, Sergei