public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Felipe Balbi <balbi@kernel.org>
To: Minas Harutyunyan <Minas.Harutyunyan@synopsys.com>,
	Martin Blumenstingl <martin.blumenstingl@googlemail.com>,
	"gregkh\@linuxfoundation.org" <gregkh@linuxfoundation.org>,
	"linux-usb\@vger.kernel.org" <linux-usb@vger.kernel.org>
Cc: "linux-kernel\@vger.kernel.org" <linux-kernel@vger.kernel.org>,
	"marex\@denx.de" <marex@denx.de>,
	"stable\@vger.kernel.org" <stable@vger.kernel.org>
Subject: Re: [RFC for-5.8] usb: dwc2: Cleanup debugfs when usb_add_gadget_udc() fails
Date: Thu, 23 Jul 2020 16:03:44 +0300	[thread overview]
Message-ID: <87eep2o027.fsf@kernel.org> (raw)
In-Reply-To: <0ba4b7ce-3551-0453-bac7-4d86c53dd2e8@synopsys.com>

[-- Attachment #1: Type: text/plain, Size: 1860 bytes --]

Minas Harutyunyan <Minas.Harutyunyan@synopsys.com> writes:

> Hi Martin,
>
> On 6/29/2020 10:03 PM, Martin Blumenstingl wrote:
>> Call dwc2_debugfs_exit() when usb_add_gadget_udc() has failed. This
>> ensure that the debugfs entries created by dwc2_debugfs_init() are
>> cleaned up in the error path.
>> 
>> Fixes: 207324a321a866 ("usb: dwc2: Postponed gadget registration to the udc class driver")
>> Signed-off-by: Martin Blumenstingl <martin.blumenstingl@googlemail.com>
>> ---
>> This patch is compile-tested only. I found this while trying to
>> understand the latest changes to dwc2/platform.c.
>> 
>> 
>>   drivers/usb/dwc2/platform.c | 4 +++-
>>   1 file changed, 3 insertions(+), 1 deletion(-)
>> 
>> diff --git a/drivers/usb/dwc2/platform.c b/drivers/usb/dwc2/platform.c
>> index c347d93eae64..02b6da7e21d7 100644
>> --- a/drivers/usb/dwc2/platform.c
>> +++ b/drivers/usb/dwc2/platform.c
>> @@ -582,12 +582,14 @@ static int dwc2_driver_probe(struct platform_device *dev)
>>   		retval = usb_add_gadget_udc(hsotg->dev, &hsotg->gadget);
>>   		if (retval) {
>>   			dwc2_hsotg_remove(hsotg);
>> -			goto error_init;
>> +			goto error_debugfs;
>>   		}
>>   	}
>>   #endif /* CONFIG_USB_DWC2_PERIPHERAL || CONFIG_USB_DWC2_DUAL_ROLE */
>>   	return 0;
>>   
>> +error_debugfs:
>> +	dwc2_debugfs_exit(hsotg);
>>   error_init:
>>   	if (hsotg->params.activate_stm_id_vb_detection)
>>   		regulator_disable(hsotg->usb33d);
>> 
> I'm Ok with this fix. One more thing. I missed to remove hcd also in 
> fail case. Could you please add dwc2_hcd_remove() call after 
> dwc2_debugfs_exit(hsotg) and submit as patch:
>
> +error_debugfs:
> +	dwc2_debugfs_exit(hsotg);
> +	if (hsotg->hcd_enabled)
> +		dwc2_hcd_remove(hsotg);
>    error_init:

looks like it should be a separate patch though. Right?

-- 
balbi

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 832 bytes --]

  reply	other threads:[~2020-07-23 13:03 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-06-29 18:03 [RFC for-5.8] usb: dwc2: Cleanup debugfs when usb_add_gadget_udc() fails Martin Blumenstingl
2020-07-01  7:16 ` Minas Harutyunyan
2020-07-23 13:03   ` Felipe Balbi [this message]
2020-07-23 13:22     ` Minas Harutyunyan

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=87eep2o027.fsf@kernel.org \
    --to=balbi@kernel.org \
    --cc=Minas.Harutyunyan@synopsys.com \
    --cc=gregkh@linuxfoundation.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-usb@vger.kernel.org \
    --cc=marex@denx.de \
    --cc=martin.blumenstingl@googlemail.com \
    --cc=stable@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox