From patchwork Fri May 5 19:46:28 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Arnd Bergmann X-Patchwork-Id: 98655 Delivered-To: patch@linaro.org Received: by 10.140.96.100 with SMTP id j91csp292642qge; Fri, 5 May 2017 12:48:12 -0700 (PDT) X-Received: by 10.99.177.8 with SMTP id r8mr5304985pgf.109.1494013692249; Fri, 05 May 2017 12:48:12 -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.12; Fri, 05 May 2017 12:48:12 -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 S1752923AbdEETsL (ORCPT + 6 others); Fri, 5 May 2017 15:48:11 -0400 Received: from mout.kundenserver.de ([212.227.126.135]:53962 "EHLO mout.kundenserver.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751284AbdEETsK (ORCPT ); Fri, 5 May 2017 15:48:10 -0400 Received: from wuerfel.lan ([78.42.17.5]) by mrelayeu.kundenserver.de (mreue002 [212.227.15.129]) with ESMTPA (Nemesis) id 0MPMdk-1dB6v93jhA-004TLJ; Fri, 05 May 2017 21:48:07 +0200 From: Arnd Bergmann To: Ben Hutchings Cc: stable@vger.kernel.org, Arnd Bergmann Subject: [PATCH 3.16-stable 10/87] gfs2: remove IS_ERR_VALUE abuse Date: Fri, 5 May 2017 21:46:28 +0200 Message-Id: <20170505194745.3627137-11-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:Kk1im/aF0SXeJ6YCiatb5JuFbkYzRN5hp3ojizKPP5ZpzBdF4Dh vl/HvDKbP5wYWbXLq3a6gnjxIuzO1oBJeTPGyl7ussrYGPAfskke9ip+xfzmkbNK/2NyTdG wAkg4ymuOuWn6fj7CODKK8LAwNuUR2NG3NzwZ30Wtf+5/Q+UpIAybh7mYJsWKveI3sDYW/x Oeefd76zZmLdRgdURNvZA== X-UI-Out-Filterresults: notjunk:1; V01:K0:HQUHkeiYD9o=:ClnUTMZAOnK7rmpp/QL9fG aMNOXNNgjnq/SUTJFnGjXNWcGz8Tb0bRSE49uOEDNkaJT1u3YwKV/APxFxPB+wXMnGBOlHA7s 9wa7g8zBCHKu50ylVhzDnOnSzktEBxnbmZoB/AOHhTHeZ0w0xrpHvwnZaiqrXRcw9QLcxaOEV +MP4guKvHlooqapomMemibShz7T4IkW0aQlkWhecG69tEZJIy1j30k0M3e+8K1UwvHM/Iibfa 2Qg8jLPQ/rBfeTQ6RSoiP6U5MJ+X1f9OZP9T9g8OloK0i1hn/wxj5kwQG4PZtnwM7y/6JBeC4 W6xMqkhSIM1PkM4xkbKms730jftaN9bpOmibkV08jNy9BcrtKXCcjEwuFqAdhm3kn88my1ayn KfcQgsp2VmmC9Ys7bAtJefDOQwUd1lbG1CzgZEjQzExoASvBxvgb6pvPGZtzmCTOb6+Nm4T1e n15cik/ZZgdnbsGwhXBdLRjBzklq/zZ6dhULWi3+gF604ED6ETuME+9kJ6UO6LOtAkXsOii1q 6ZdqLuI9hWF5rz8YziSJrOEsScQe6RAJN8yW7AtOV042UQbhzdKm7wUCLXMA66Yw5udJ4MC4e zWgsV0r0khE4HZ5mVCuzlpy8ZREPmqfijOlaXCju3yv+aYtQXIWgkTFP0LiVn7Ou/hoJm98Jr KBMIy4MvHhFDV0p1Z5SYG9+2sK038P6OfXl/S1gxuWOj6dFucbHXp+Wov7yGSKtQ+exM= Sender: stable-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: stable@vger.kernel.org Picked from commit 287980e49ffc0f6d911601e7e352a812ed27768e ("remove lots of IS_ERR_VALUE abuses") upstream. The original fix that was backported to 3.18 already addressed the warning in some configurations, but not in others, leaving us with the same output: ../fs/gfs2/dir.c: In function 'get_first_leaf': ../fs/gfs2/dir.c:768:9: warning: 'leaf_no' may be used uninitialized in this function [-Wmaybe-uninitialized] error = get_leaf(dip, leaf_no, bh_out); ^ ../fs/gfs2/dir.c: In function 'dir_split_leaf.isra.20': ../fs/gfs2/dir.c:987:8: warning: 'leaf_no' may be used uninitialized in this function [-Wmaybe-uninitialized] This takes the approach that we took in later versions in mainline, but does not backport the entire patch, as that would be too large for stable and IIRC caused regressions in other drivers. Fixes: 9d46d31e9aea ("gfs2: avoid uninitialized variable warning") Signed-off-by: Arnd Bergmann --- fs/gfs2/dir.c | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) -- 2.9.0 diff --git a/fs/gfs2/dir.c b/fs/gfs2/dir.c index 9291cf5e7439..6810c8772eb1 100644 --- a/fs/gfs2/dir.c +++ b/fs/gfs2/dir.c @@ -749,12 +749,15 @@ static int get_leaf_nr(struct gfs2_inode *dip, u32 index, u64 *leaf_out) { __be64 *hash; + int error; hash = gfs2_dir_get_hash_table(dip); - if (IS_ERR(hash)) - return PTR_ERR(hash); - *leaf_out = be64_to_cpu(*(hash + index)); - return 0; + error = PTR_ERR_OR_ZERO(hash); + + if (!error) + *leaf_out = be64_to_cpu(*(hash + index)); + + return error; } static int get_first_leaf(struct gfs2_inode *dip, u32 index,