Received: by 2002:ad5:474a:0:0:0:0:0 with SMTP id i10csp57919imu; Mon, 10 Dec 2018 16:04:19 -0800 (PST) X-Google-Smtp-Source: AFSGD/U6cthlPmI6UC4ewJ9tP+LjabiatvrfHxbpEWDwSHh+rVF4QLmVs/IvdXPyIdWDFYJ2tYoa X-Received: by 2002:a63:507:: with SMTP id 7mr12349208pgf.411.1544486659169; Mon, 10 Dec 2018 16:04:19 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1544486659; cv=none; d=google.com; s=arc-20160816; b=IGAsIu9rwPjF89v2LrqHxoDjWRxOkiKGUmSk27DSnlgtM2DPa8dIT3iVDisoiANgyT 2BDKrwlsAmpVcGH6dhTEHwIlSXi83hJTnZeZ8yuWlnxyLquy6b/S1mjfhjeTQwhxDmgl aVl4EbzUALGdXxsD89c7754FEWTh5BajescX6X9g9GfP3e2s7ojusxam1pgXMjxFJv+u gTuyfzZzoVUrEzwWdBSGsZe6D5sfdrPWCWGlqeVCHUr1y4IYJeatkxVnJiZW6d2h5ghH 01owDfWBmbed4TM3rUrm/CPlPIbcaEdeHmykJK775b3cwQr7yALY4yY3ZgxOFMFACeHC VjyA== 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:mime-version :references:in-reply-to:message-id:subject:cc:to:from:date :dkim-signature; bh=rbqNL2wg4RIzsdNJFABHv1+khCD81r+fHPcPnRlkoP0=; b=bYv8xdQLDfeqXitnfrla6HWYAtpRsXVu8B92pAfC1yA+9kNUP8tvqgLzlRTr6q6Ray pAcAr2ZsQuu9KnPjHyWG64Mt7kMX0L9OeSdVp5w8bZIMB4/8JqmGaEnt2LHP7j/An7sB CkOfxf832lzFio0WSpyMZoFQN7wT6YzwJjIiykA0zwKNd/FfxJ115hHqVlysff3KZ2na 4s0e7x+1EpZJ4q2keckXpidRZWkR6rNWC9rNNz/j5GiJKP78+VeiNhdu0KvnXM/lDLca 0v1LlEMOdukdwKHZp6RVFL3MoaRZB/XSqGQQN3H9VyXhdg9xHBhW9BHGmUGNaRpx9/Ny 5zjA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b="cfks1aG/"; 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; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id i4si11633129pfg.218.2018.12.10.16.03.59; Mon, 10 Dec 2018 16:04:19 -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=@kernel.org header.s=default header.b="cfks1aG/"; 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; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728455AbeLJVSe (ORCPT + 99 others); Mon, 10 Dec 2018 16:18:34 -0500 Received: from mail.kernel.org ([198.145.29.99]:59070 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726024AbeLJVSd (ORCPT ); Mon, 10 Dec 2018 16:18:33 -0500 Received: from archlinux (cpc91196-cmbg18-2-0-cust659.5-4.cable.virginm.net [81.96.234.148]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPSA id E364D20672; Mon, 10 Dec 2018 21:18:31 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1544476713; bh=YWhYiJE4CRyzUEbP6iNgffWEAynq36sTo6lVIxB5xwA=; h=Date:From:To:Cc:Subject:In-Reply-To:References:From; b=cfks1aG/YoNXsA6nxUD7B9YKCMX7u9dfe+y57qBsw71eI/rKDjnIp4QU7xof1hRLU YQKv6jCM3f0jLOBFkevwV4fHYGnP62Ap85bXMht6EhXYbkYgRLM83aR5ZeEd8kZdGP hGiwKyfizmAagF1sS5Xvqff8MkQVqEcNuYmGzGJs= Date: Mon, 10 Dec 2018 21:18:29 +0000 From: Jonathan Cameron To: Martin Kepplinger Cc: knaack.h@gmx.de, lars@metafoo.de, pmeerw@pmeerw.net, linux-iio@vger.kernel.org, linux-kernel@vger.kernel.org Subject: Re: [PATCH] iio: accel: mma9551_core: prevent using uninitialized variable Message-ID: <20181210211829.44c83cbf@archlinux> In-Reply-To: <20181210142532.15315-1-martink@posteo.de> References: <20181210142532.15315-1-martink@posteo.de> X-Mailer: Claws Mail 3.17.1 (GTK+ 2.24.32; x86_64-pc-linux-gnu) MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Mon, 10 Dec 2018 15:25:32 +0100 Martin Kepplinger wrote: > mma9551_gpio_config()'s switch statement sets the uninitialized pol_mask > variable but doesn't have default settings. Said function can therefore > be called in a way to use the uninitialized variable (at least in case > enum mma9551_gpio_pin is extended with unhandled values). > > While things should be fine now, this initializes pol_mask just to prevent > failure. I'm unconvinced by this approach. Should the enum be extended and have unhandled values then the value of reg will be garbage as well. I'd much rather see the switch statement have a default with appropriate error return. Jonathan > > Signed-off-by: Martin Kepplinger > --- > drivers/iio/accel/mma9551_core.c | 3 ++- > 1 file changed, 2 insertions(+), 1 deletion(-) > > diff --git a/drivers/iio/accel/mma9551_core.c b/drivers/iio/accel/mma9551_core.c > index c34c5ce8123b..2fc79b14888b 100644 > --- a/drivers/iio/accel/mma9551_core.c > +++ b/drivers/iio/accel/mma9551_core.c > @@ -539,7 +539,8 @@ EXPORT_SYMBOL(mma9551_update_config_bits); > int mma9551_gpio_config(struct i2c_client *client, enum mma9551_gpio_pin pin, > u8 app_id, u8 bitnum, int polarity) > { > - u8 reg, pol_mask, pol_val; > + u8 reg, pol_val; > + u8 pol_mask = 0; > int ret; > > if (pin > mma9551_gpio_max) {