Received: by 2002:ad5:474a:0:0:0:0:0 with SMTP id i10csp2406506imu; Wed, 21 Nov 2018 11:07:38 -0800 (PST) X-Google-Smtp-Source: AFSGD/VOiWllzs7I1Q/rMEPPOc7wOMOFv8gg1KRVFS85VYrF90BFbEaznYrrrvGsgVm1h7mHZJI9 X-Received: by 2002:a63:1b48:: with SMTP id b8mr7139780pgm.187.1542827258243; Wed, 21 Nov 2018 11:07:38 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1542827258; cv=none; d=google.com; s=arc-20160816; b=zAJvTQSEJKMCCJ7XqUZUXz84rH6dR5h7fBYnjhd3doyN9Pf4Q2IRZl7KqCB6Y+onqB qom3RbwFdmjy4+7QxyooVE1ht/aBVbjc0DlDu9PjmJDd8nnmpQX6eYoK5s3JCZiQ3wL/ 3ga0+NfKnhrQMoY0p2z2kAxCetSug+Flt7Y9nT9FHkeE2byD/wN4h4yVqGzJ+qQhb8FG 2L22M7s0DAXyp8KzQMWcTGGMitr9h99pEoJmruxePNPF2CJDjECvR28g4CrAtvDHPKur TT56VJgPXHKEFIA8i+X9iL1hFkYUMJMKOoS+2WIvv9zDQbJXpFwMSDdBE+SBa0aSPEAv WBgw== 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:cc:to:subject :message-id:date:from:in-reply-to:references:mime-version :dkim-signature; bh=EIusMxrGSc1BIr0wrnhU4S6fpPtN2h+O41y+wIqsiGY=; b=Mu3HkHxX/zsgSMOi63XzRHR4Qx+JZfdCV0WSCGrv3Ex8GH6p/1dQP6M4pnRuazc31A fTAx/LIPh1XLZ4tnK1nF1ZI3uetAnOVVQRVxnK6lSseWNGOHQoL+8SqVgFQ59zVUEpST 37ZMuJXysNvzx1Eoikv76L9JXfU16bQV2XYj+dR5FYGgTZ/39vF5vb+ZipbVb/Zp3Qy8 opCDHkWBXUF4pgjGUpbqy93g0bFp170HqDF6JJ1gmjR/qGILlxYxb2XgGZjpMIFfKwCy E8dTHoBgJQwmIwKl7HT4Sxeghg2anR9uIApM3LJDWcxE+1JUpDfr87eYB20QRjC5Ux0W 5K8A== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@baylibre-com.20150623.gappssmtp.com header.s=20150623 header.b=SbfOHbVi; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id k25si23198720pfe.10.2018.11.21.11.07.21; Wed, 21 Nov 2018 11:07:38 -0800 (PST) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@baylibre-com.20150623.gappssmtp.com header.s=20150623 header.b=SbfOHbVi; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1730821AbeKVDTH (ORCPT + 99 others); Wed, 21 Nov 2018 22:19:07 -0500 Received: from mail-ot1-f66.google.com ([209.85.210.66]:40001 "EHLO mail-ot1-f66.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1728520AbeKVDTG (ORCPT ); Wed, 21 Nov 2018 22:19:06 -0500 Received: by mail-ot1-f66.google.com with SMTP id s5so5503523oth.7 for ; Wed, 21 Nov 2018 08:43:55 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=baylibre-com.20150623.gappssmtp.com; s=20150623; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc:content-transfer-encoding; bh=EIusMxrGSc1BIr0wrnhU4S6fpPtN2h+O41y+wIqsiGY=; b=SbfOHbViSueBDoPLs2EGvI9iH3ILhrMXbtGQdYV8E5BJm+Ms8EqtEUV5y3pojzVPfw rvLIR9Clh2z55RcqsmYGXY5bM0Yodiz7fRzO4jkOlCmYHXz96Oc8ITaIUelyTdzEeHQ9 WdxRm0Om+Gqt5HebOClPFpLSfRI/YcB5mTQbZyaGPpY20zqZ01rGI0cqxdAPEF3E/Rgg QjOtEfoQHy2KeTLkY+K9UTXp5lyPB2JWMaBCWhT/SjqgFrjiA4mQ4VusHJoYmkPTFNzw vLgCErjRY2NrHjTsx2h+c9W1bKDfgKS8b5qZuCRvXKUxpfOfR9CtYhom6gNVDVjvcmmC 5SMA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc:content-transfer-encoding; bh=EIusMxrGSc1BIr0wrnhU4S6fpPtN2h+O41y+wIqsiGY=; b=meZgmS0oI2WVoH0Lq7plI7r6WiUt41o7z4++6TEOOWOr5nCdS5k8awul6+fu5kvQe5 q8xRQl95ARS1laeP9D63a8En15C2WCj3HYHgT+sHbPaoL6CdNvdjbcDVgi4Vut+TDKgl HrXELO6zMR+O64SXTiQRdop1znHns04Tfwz6cz4Ir8H1+YzyW5JcYVruCdkrkFxkr0+x clgSccDP/fv3cLwvzko2kmOaODShIBa+IuOstYDdTFOWzdEPiBXjlv6sQO2+Ws25AWFj pJB0PKfC2P30/QuDihTfsTxc0YM/rfrag8mm7kKRHCD1cqOP/eIqwVrK1Fqw2FC9Y59X xrrA== X-Gm-Message-State: AA+aEWbpNHtcCL73KRObfxsxNRXEsLIIYJnJjiUst6isapJDvng1JdGE FZYjimapkK5oxC7A58heja1xPIrrCkDXiP7ci4iK4Q== X-Received: by 2002:a9d:32c7:: with SMTP id u65mr4100344otb.236.1542818635168; Wed, 21 Nov 2018 08:43:55 -0800 (PST) MIME-Version: 1.0 References: <1542818142-27800-1-git-send-email-hofrat@osadl.org> In-Reply-To: <1542818142-27800-1-git-send-email-hofrat@osadl.org> From: Bartosz Golaszewski Date: Wed, 21 Nov 2018 17:43:43 +0100 Message-ID: Subject: Re: [PATCH] gpio: mt7621: handle failure of devm_kasprintf() To: hofrat@osadl.org Cc: Linus Walleij , matthias.bgg@gmail.com, sergio.paracuellos@gmail.com, linux-gpio , LKML , arm-soc , linux-mediatek@lists.infradead.org Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org =C5=9Br., 21 lis 2018 o 17:39 Nicholas Mc Guire napisa= =C5=82(a): > > kasprintf() may return NULL on failure of internal allocation thus the > assigned label is not safe if not explicitly checked. On error > mediatek_gpio_bank_probe() returns negative values so -ENOMEM in the > (unlikely) failure case should be fine here. > > Signed-off-by: Nicholas Mc Guire > Fixes: 4ba9c3afda41 ("gpio: mt7621: Add a driver for MT7621") > --- > > Problem located with experimental coccinelle script > > Patch was compile tested with: omega2p_defconfig, SOC_MT7621=3Dy, > GPIOLIB=3Dy, GPIO_MT7621=3Dy > > Patch is against 4.20-rc3 (localversion-next is next-20181121) > > drivers/gpio/gpio-mt7621.c | 4 ++++ > 1 file changed, 4 insertions(+) > > diff --git a/drivers/gpio/gpio-mt7621.c b/drivers/gpio/gpio-mt7621.c > index d72af6f..42f0c67 100644 > --- a/drivers/gpio/gpio-mt7621.c > +++ b/drivers/gpio/gpio-mt7621.c > @@ -244,6 +244,10 @@ mediatek_gpio_bank_probe(struct device *dev, > rg->chip.of_xlate =3D mediatek_gpio_xlate; > rg->chip.label =3D devm_kasprintf(dev, GFP_KERNEL, "%s-bank%d", > dev_name(dev), bank); > + if (!rg->chip.label) { > + dev_err(dev, "Could not allocate label\n"); No need for an error message here, an -ENOMEM says enough. Bart > + return -ENOMEM; > + } > > ret =3D devm_gpiochip_add_data(dev, &rg->chip, mtk); > if (ret < 0) { > -- > 2.1.4 >