From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754739AbcDNJey (ORCPT ); Thu, 14 Apr 2016 05:34:54 -0400 Received: from aserp1040.oracle.com ([141.146.126.69]:44843 "EHLO aserp1040.oracle.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753142AbcDNJew (ORCPT ); Thu, 14 Apr 2016 05:34:52 -0400 Date: Thu, 14 Apr 2016 12:34:41 +0300 From: Dan Carpenter To: Liam Girdwood Cc: Mark Brown , linux-kernel@vger.kernel.org, kernel-janitors@vger.kernel.org Subject: [patch] regulator: lp3971: Silence uninitialized variable warning Message-ID: <20160414093441.GF16549@mwanda> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline User-Agent: Mutt/1.5.24 (2015-08-30) X-Source-IP: userv0021.oracle.com [156.151.31.71] Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org This is harmless but if lp3971_i2c_read() fails then "tmp" can be uninitialized. Silence the warning by moving the error handling up a line. Signed-off-by: Dan Carpenter diff --git a/drivers/regulator/lp3971.c b/drivers/regulator/lp3971.c index 15c25c6..204b5c5 100644 --- a/drivers/regulator/lp3971.c +++ b/drivers/regulator/lp3971.c @@ -365,8 +365,8 @@ static int lp3971_set_bits(struct lp3971 *lp3971, u8 reg, u16 mask, u16 val) mutex_lock(&lp3971->io_lock); ret = lp3971_i2c_read(lp3971->i2c, reg, 1, &tmp); - tmp = (tmp & ~mask) | val; if (ret == 0) { + tmp = (tmp & ~mask) | val; ret = lp3971_i2c_write(lp3971->i2c, reg, 1, &tmp); dev_dbg(lp3971->dev, "reg write 0x%02x -> 0x%02x\n", (int)reg, (unsigned)val&0xff);