From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752070AbbBUTnb (ORCPT ); Sat, 21 Feb 2015 14:43:31 -0500 Received: from mout.web.de ([212.227.15.14]:59223 "EHLO mout.web.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751872AbbBUTn1 (ORCPT ); Sat, 21 Feb 2015 14:43:27 -0500 Message-ID: <54E8DFB8.7030604@users.sourceforge.net> Date: Sat, 21 Feb 2015 20:42:48 +0100 From: SF Markus Elfring User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:31.0) Gecko/20100101 Thunderbird/31.4.0 MIME-Version: 1.0 To: Joel Becker , Mark Fasheh , ocfs2-devel@oss.oracle.com CC: linux-kernel@vger.kernel.org, kernel-janitors@vger.kernel.org, Julia Lawall Subject: [PATCH 2/7] ocfs2: Less function calls in ocfs2_convert_inline_data_to_extents() after error detection References: <5307CAA2.8060406@users.sourceforge.net> <530A086E.8010901@users.sourceforge.net> <530A72AA.3000601@users.sourceforge.net> <530B5FB6.6010207@users.sourceforge.net> <530C5E18.1020800@users.sourceforge.net> <530CD2C4.4050903@users.sourceforge.net> <530CF8FF.8080600@users.sourceforge.net> <530DD06F.4090703@users.sourceforge.net> <5317A59D.4@users.sourceforge.net> <5455FC05.4010606@users.sourceforge.net> <54E8DDDB.9020902@users.sourceforge.net> In-Reply-To: <54E8DDDB.9020902@users.sourceforge.net> Content-Type: text/plain; charset=windows-1252 Content-Transfer-Encoding: 7bit X-Provags-ID: V03:K0:lp5f1uLMm5RodYy0wPff9XTk28q3BmlhhSFkW2h0x+6kZAg2SlE PUsF/qR3BGXJbag30RmvU+OQJk9lUWWXTZfuUqXb/bnNi8mXlYji/If3Ow5mEWtS4Bx5Knm 4g0H0D+StOQ6EFstnn6Su7Ax/SwDLt6A6aAKXoUaEnCCWcGhymeoFKwKJvXTr7eQDLvflam ZBLbOgAAgDAuD/raAd16A== X-UI-Out-Filterresults: notjunk:1; Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Markus Elfring Date: Sat, 21 Feb 2015 18:19:04 +0100 The kfree() function was called in a few cases by the ocfs2_convert_inline_data_to_extents() function during error handling even if the passed variable "pages" contained a null pointer. * Return from this implementation directly after failure detection for the function call "kcalloc". * Corresponding details could be improved by the introduction of another jump label. Signed-off-by: Markus Elfring --- fs/ocfs2/alloc.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/fs/ocfs2/alloc.c b/fs/ocfs2/alloc.c index fdab27c..bf806e5 100644 --- a/fs/ocfs2/alloc.c +++ b/fs/ocfs2/alloc.c @@ -6853,13 +6853,13 @@ int ocfs2_convert_inline_data_to_extents(struct inode *inode, if (pages == NULL) { ret = -ENOMEM; mlog_errno(ret); - goto out; + return ret; } ret = ocfs2_reserve_clusters(osb, 1, &data_ac); if (ret) { mlog_errno(ret); - goto out; + goto free_pages; } } @@ -6991,6 +6991,7 @@ out_commit: out: if (data_ac) ocfs2_free_alloc_context(data_ac); +free_pages: kfree(pages); return ret; } -- 2.3.0