From patchwork Fri May 5 19:46:27 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Arnd Bergmann X-Patchwork-Id: 98666 Delivered-To: patch@linaro.org Received: by 10.140.96.100 with SMTP id j91csp292686qge; Fri, 5 May 2017 12:48:19 -0700 (PDT) X-Received: by 10.99.142.73 with SMTP id k70mr5378949pge.0.1494013699728; Fri, 05 May 2017 12:48:19 -0700 (PDT) Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id 144si6012850pfa.118.2017.05.05.12.48.19; Fri, 05 May 2017 12:48:19 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of stable-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of stable-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=stable-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1755211AbdEETsS (ORCPT + 6 others); Fri, 5 May 2017 15:48:18 -0400 Received: from mout.kundenserver.de ([212.227.126.133]:63269 "EHLO mout.kundenserver.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1755366AbdEETsP (ORCPT ); Fri, 5 May 2017 15:48:15 -0400 Received: from wuerfel.lan ([78.42.17.5]) by mrelayeu.kundenserver.de (mreue002 [212.227.15.129]) with ESMTPA (Nemesis) id 0ME6mN-1dHTMu2qdD-00HREA; Fri, 05 May 2017 21:48:07 +0200 From: Arnd Bergmann To: Ben Hutchings Cc: stable@vger.kernel.org, Arnd Bergmann , Bob Peterson , Greg Kroah-Hartman Subject: [PATCH 3.16-stable 09/87] gfs2: avoid uninitialized variable warning Date: Fri, 5 May 2017 21:46:27 +0200 Message-Id: <20170505194745.3627137-10-arnd@arndb.de> X-Mailer: git-send-email 2.9.0 In-Reply-To: <20170505194745.3627137-1-arnd@arndb.de> References: <20170505194745.3627137-1-arnd@arndb.de> X-Provags-ID: V03:K0:VUoV0dfUX0REY31euvinTkx08FpxAi1krbQ5jk/ETGXTCzQGe6m agmGUELa8ge5JYLEKOL/gXmh6BczZwImpcKbKzagH/E/k9xYBFN7ZPjGAjr6kwHeSl0gAof vToZ0KetAb8jWS3b5JVsaVCq4ZBqbyzUHFQbnOG04qsoUFI8zZ5SPD1IHXS0OICRtIVrllj R6BwqSR5qlCDOlGTIU/5w== X-UI-Out-Filterresults: notjunk:1; V01:K0:XWu/hMbbjPQ=:RvAzbOlWXypCZRnjHgFBeW /jOOMG3fkdBJvsvzUBC8senLlQhipRQliQms8SC4PXcrQXnd7ilMomYYB6/MlmX1Z9nyKP4/r EX+PabS3tKs5fFptqfENF6Ls0zoO8wi40DhpwQX1N0YTand8q6QmlvXxufIQaMzrQFkz7s5kI fLOGsU338vYaQXhvla632uqTlbPh/mU0huRcGZwxksud4tlgEZ/qOjSOUptHQhJR+6FxY4+gl RqmeRtKUC9UluPK66kbxD2YPO/0l+n3+O1ZWjB1mxm9BYLsYrB8LXHriqvRe2jPqMsRzcWjK4 Th6iNH3ZACnM9XB8+krUO0rBP958XjHJzvXQg8dZNeZewN0pzPJ2DRKvFwqiHlVTe2zhzQs3V qN307cegkrD75mR7Um8gS2CiV2cOwkU+F8MSTXLwWLhCSajjv+sxTOeKntppJma3HBOhDVzq7 aD76SEt7uN0FWtn7RmHPwJbogQe6yIVJ4AHgNCFDzwDLn9NU99rfYxIWXXhbTjt0zR3ykAG7J wLhCOyRoakH4eoKcLnUEt4yaTQBwQLg6NUVvqitgoMYOFiY66BIEF6PVvFuyZ3phR9cKJUJe5 sYQDm815SxLPIlFRQxqk8iQDMSTEvujPeDZqgEDiOquF3dWaY530dxoMA3q8OcIaGILOelbFN mfsNODOYroP/9b62XvPUATGNbY9AxDw5C9Vvrap/L8Ucy5vZN9LGc+W4d11aFU3MlynM= Sender: stable-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: stable@vger.kernel.org commit 67893f12e5374bbcaaffbc6e570acbc2714ea884 upstream. We get a bogus warning about a potential uninitialized variable use in gfs2, because the compiler does not figure out that we never use the leaf number if get_leaf_nr() returns an error: fs/gfs2/dir.c: In function 'get_first_leaf': fs/gfs2/dir.c:802:9: warning: 'leaf_no' may be used uninitialized in this function [-Wmaybe-uninitialized] fs/gfs2/dir.c: In function 'dir_split_leaf': fs/gfs2/dir.c:1021:8: warning: 'leaf_no' may be used uninitialized in this function [-Wmaybe-uninitialized] Changing the 'if (!error)' to 'if (!IS_ERR_VALUE(error))' is sufficient to let gcc understand that this is exactly the same condition as in IS_ERR() so it can optimize the code path enough to understand it. Signed-off-by: Arnd Bergmann Signed-off-by: Bob Peterson Signed-off-by: Greg Kroah-Hartman Signed-off-by: Arnd Bergmann --- fs/gfs2/dir.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) -- 2.9.0 diff --git a/fs/gfs2/dir.c b/fs/gfs2/dir.c index 5d4261ff5d23..9291cf5e7439 100644 --- a/fs/gfs2/dir.c +++ b/fs/gfs2/dir.c @@ -764,7 +764,7 @@ static int get_first_leaf(struct gfs2_inode *dip, u32 index, int error; error = get_leaf_nr(dip, index, &leaf_no); - if (!error) + if (!IS_ERR_VALUE(error)) error = get_leaf(dip, leaf_no, bh_out); return error; @@ -980,7 +980,7 @@ static int dir_split_leaf(struct inode *inode, const struct qstr *name) index = name->hash >> (32 - dip->i_depth); error = get_leaf_nr(dip, index, &leaf_no); - if (error) + if (IS_ERR_VALUE(error)) return error; /* Get the old leaf block */