Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752441AbcLBQU6 (ORCPT ); Fri, 2 Dec 2016 11:20:58 -0500 Received: from mail.free-electrons.com ([62.4.15.54]:38913 "EHLO mail.free-electrons.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1750781AbcLBQTY (ORCPT ); Fri, 2 Dec 2016 11:19:24 -0500 Date: Fri, 2 Dec 2016 17:19:21 +0100 From: Alexandre Belloni To: David Laight Cc: Felipe Balbi , Nicolas Ferre , "linux-arm-kernel@lists.infradead.org" , "linux-kernel@vger.kernel.org" , "linux-usb@vger.kernel.org" Subject: Re: [PATCH] usb: gadget: udc: atmel: used managed kasprintf Message-ID: <20161202161921.ace5rolitlxjhr6i@piout.net> References: <20161201102656.29041-1-alexandre.belloni@free-electrons.com> <063D6719AE5E284EB5DD2968C1650D6DB0232C0D@AcuExch.aculab.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <063D6719AE5E284EB5DD2968C1650D6DB0232C0D@AcuExch.aculab.com> User-Agent: NeoMutt/20161104 (1.7.1) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1443 Lines: 38 On 02/12/2016 at 15:59:57 +0000, David Laight wrote : > From: Alexandre Belloni > > Sent: 01 December 2016 10:27 > > Use devm_kasprintf instead of simple kasprintf to free the allocated memory > > when needed. > > s/when needed/when the device is freed/ > > > Suggested-by: Peter Rosin > > Signed-off-by: Alexandre Belloni > > --- > > drivers/usb/gadget/udc/atmel_usba_udc.c | 3 ++- > > 1 file changed, 2 insertions(+), 1 deletion(-) > > > > diff --git a/drivers/usb/gadget/udc/atmel_usba_udc.c b/drivers/usb/gadget/udc/atmel_usba_udc.c > > index 45bc997d0711..aec72fe8273c 100644 > > --- a/drivers/usb/gadget/udc/atmel_usba_udc.c > > +++ b/drivers/usb/gadget/udc/atmel_usba_udc.c > > @@ -1978,7 +1978,8 @@ static struct usba_ep * atmel_udc_of_init(struct platform_device *pdev, > > dev_err(&pdev->dev, "of_probe: name error(%d)\n", ret); > > goto err; > > } > > - ep->ep.name = kasprintf(GFP_KERNEL, "ep%d", ep->index); > > + ep->ep.name = devm_kasprintf(&pdev->dev, GFP_KERNEL, "ep%d", > > + ep->index); > > Acually why bother mallocing such a small string at all. > The maximum length is 12 bytes even if 'index' are unrestricted. > IIRC, using statically allocated string is failing somewhere is the USB core but I don't remember all the details. -- Alexandre Belloni, Free Electrons Embedded Linux and Kernel engineering http://free-electrons.com