From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751329AbdAPK3O (ORCPT ); Mon, 16 Jan 2017 05:29:14 -0500 Received: from mga11.intel.com ([192.55.52.93]:25444 "EHLO mga11.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1750849AbdAPK3K (ORCPT ); Mon, 16 Jan 2017 05:29:10 -0500 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.33,238,1477983600"; d="asc'?scan'208";a="923034051" From: Felipe Balbi To: David Laight , "'Alexandre Belloni'" Cc: 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 In-Reply-To: <063D6719AE5E284EB5DD2968C1650D6DB023508B@AcuExch.aculab.com> References: <20161201102656.29041-1-alexandre.belloni@free-electrons.com> <063D6719AE5E284EB5DD2968C1650D6DB0232C0D@AcuExch.aculab.com> <20161202161921.ace5rolitlxjhr6i@piout.net> <063D6719AE5E284EB5DD2968C1650D6DB023508B@AcuExch.aculab.com> Date: Mon, 16 Jan 2017 12:27:04 +0200 Message-ID: <87eg03nvuv.fsf@linux.intel.com> MIME-Version: 1.0 Content-Type: multipart/signed; boundary="=-=-="; micalg=pgp-sha256; protocol="application/pgp-signature" Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org --=-=-= Content-Type: text/plain Content-Transfer-Encoding: quoted-printable Hi, David Laight writes: > From: Alexandre Belloni >> Sent: 02 December 2016 16:19 >> 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/g= adget/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(stru= ct platform_device *pdev, >> > > dev_err(&pdev->dev, "of_probe: name error(%d)\n", ret); >> > > goto err; >> > > } >> > > - ep->ep.name =3D kasprintf(GFP_KERNEL, "ep%d", ep->index); >> > > + ep->ep.name =3D 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. >> > >>=20 >> IIRC, using statically allocated string is failing somewhere is the USB >> core but I don't remember all the details. > > I can't imagine that changing ep->ep.name from 'char *' to 'char [12]' wo= uld > make any difference. the actual name is managed by the UDC. Meaning, ep->ep.name should be a pointer, but it could very well just point to ep->name which would be char [12]. =2D-=20 balbi --=-=-= Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQIzBAEBCAAdFiEElLzh7wn96CXwjh2IzL64meEamQYFAlh8n/gACgkQzL64meEa mQZLSBAA1Phs2hUU7VY+lpiwZYjIu+BrdCQLNl4fy73asCh/td0EcOfb5p+/05Pe 6aajXrIynOJlNGxlFWbglFxq3/8ePNO7DxJMXhfAlIEgZprYwpLOdCx3cmdgquGY Io/3ugaKnMC0PLfvLN/CqGlWwSlZHYLoKhDHD/sk2SX118oesVBbNSZdEV58wYLL Lgjcn0SxtcRNHmiYlq09UcZ3vxlmdUvR3HIA3Rd1KtPnh/K2740cCpzHHHY8GN6L kOOM2DCsp8Hf3KNEH1n8EZm5m2lPWsj9Iu4I5gmiu+9u352PzeVb28r1FKCYND10 2JxK0h8oD9hA96tKeIB5TZ1o085V4A0P2e4jzt2SH5VKDoI1q2cUo7+s0Sep3KlN pvFMnrWarklmMGmQffI3SYWgyAj7aE7qHXKmG9LXYmq4bcYFwtYNSaOgRDibFzi6 z2cxsylsMIQ7VSW+V/SNNq2PkfyDoDku8RzBrXIykIHyDnAzSQwfdz4XQa61VbgF Asllj0WPQa5QSP79gaMUiPiyrY5H22JGxzwT5UhPCC1k6QumzPjixtWIA8Bq96vJ Vo9avsyrXAKjUtJYwsezUxM+DNdjfFi4VSiuULQ6UvZI5v67/6DN4KWj44+44wnP Rx4S0HdlTeLXx4Xncp9caEmOYGw+SXaghhWhl4rpvHuEXDRp7As= =Fe0x -----END PGP SIGNATURE----- --=-=-=--