From patchwork Sun Jun 24 02:51:43 2012 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Wanlong Gao X-Patchwork-Id: 166867 Return-Path: X-Original-To: patchwork-incoming@ozlabs.org Delivered-To: patchwork-incoming@ozlabs.org Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id 8559BB6F5C for ; Sun, 24 Jun 2012 12:51:51 +1000 (EST) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753836Ab2FXCvt (ORCPT ); Sat, 23 Jun 2012 22:51:49 -0400 Received: from cn.fujitsu.com ([222.73.24.84]:62041 "EHLO song.cn.fujitsu.com" rhost-flags-OK-FAIL-OK-OK) by vger.kernel.org with ESMTP id S1753432Ab2FXCvt (ORCPT ); Sat, 23 Jun 2012 22:51:49 -0400 X-IronPort-AV: E=Sophos;i="4.77,466,1336320000"; d="scan'208";a="5251483" Received: from unknown (HELO tang.cn.fujitsu.com) ([10.167.250.3]) by song.cn.fujitsu.com with ESMTP; 24 Jun 2012 10:51:00 +0800 Received: from fnstmail02.fnst.cn.fujitsu.com (tang.cn.fujitsu.com [127.0.0.1]) by tang.cn.fujitsu.com (8.14.3/8.13.1) with ESMTP id q5O2pjrM002180; Sun, 24 Jun 2012 10:51:45 +0800 Received: from gaowanlong.fnst.cn.fujitsu.com ([10.167.225.197]) by fnstmail02.fnst.cn.fujitsu.com (Lotus Domino Release 8.5.3) with ESMTP id 2012062410520368-351458 ; Sun, 24 Jun 2012 10:52:03 +0800 From: Wanlong Gao To: jack@suse.cz Cc: linux-ext4@vger.kernel.org, Wanlong Gao Subject: [PATCH] ext2: cleanup the confused goto label Date: Sun, 24 Jun 2012 10:51:43 +0800 Message-Id: <1340506303-31723-1-git-send-email-gaowanlong@cn.fujitsu.com> X-Mailer: git-send-email 1.7.11.rc0 X-MIMETrack: Itemize by SMTP Server on mailserver/fnst(Release 8.5.3|September 15, 2011) at 2012/06/24 10:52:03, Serialize by Router on mailserver/fnst(Release 8.5.3|September 15, 2011) at 2012/06/24 10:52:04, Serialize complete at 2012/06/24 10:52:04 Sender: linux-ext4-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-ext4@vger.kernel.org Cleanup the confused goto label in ext2_fill_super. Signed-off-by: Wanlong Gao --- fs/ext2/super.c | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/fs/ext2/super.c b/fs/ext2/super.c index b3621cb..301379d 100644 --- a/fs/ext2/super.c +++ b/fs/ext2/super.c @@ -771,14 +771,13 @@ static int ext2_fill_super(struct super_block *sb, void *data, int silent) err = -ENOMEM; sbi = kzalloc(sizeof(*sbi), GFP_KERNEL); if (!sbi) - goto failed_unlock; + goto failed; sbi->s_blockgroup_lock = kzalloc(sizeof(struct blockgroup_lock), GFP_KERNEL); - if (!sbi->s_blockgroup_lock) { - kfree(sbi); - goto failed_unlock; - } + if (!sbi->s_blockgroup_lock) + goto failed_sbi; + sb->s_fs_info = sbi; sbi->s_sb_block = sb_block; @@ -794,7 +793,7 @@ static int ext2_fill_super(struct super_block *sb, void *data, int silent) blocksize = sb_min_blocksize(sb, BLOCK_SIZE); if (!blocksize) { ext2_msg(sb, KERN_ERR, "error: unable to set blocksize"); - goto failed_sbi; + goto failed_bg_lock; } /* @@ -810,7 +809,7 @@ static int ext2_fill_super(struct super_block *sb, void *data, int silent) if (!(bh = sb_bread(sb, logic_sb_block))) { ext2_msg(sb, KERN_ERR, "error: unable to read superblock"); - goto failed_sbi; + goto failed_bg_lock; } /* * Note: s_es must be initialized as soon as possible because @@ -905,7 +904,7 @@ static int ext2_fill_super(struct super_block *sb, void *data, int silent) if (!sb_set_blocksize(sb, blocksize)) { ext2_msg(sb, KERN_ERR, "error: bad blocksize %d", blocksize); - goto failed_sbi; + goto failed_bg_lock; } logic_sb_block = (sb_block*BLOCK_SIZE) / blocksize; @@ -914,7 +913,7 @@ static int ext2_fill_super(struct super_block *sb, void *data, int silent) if(!bh) { ext2_msg(sb, KERN_ERR, "error: couldn't read" "superblock on 2nd try"); - goto failed_sbi; + goto failed_bg_lock; } es = (struct ext2_super_block *) (((char *)bh->b_data) + offset); sbi->s_es = es; @@ -1126,11 +1125,12 @@ failed_mount_group_desc: kfree(sbi->s_debts); failed_mount: brelse(bh); -failed_sbi: +failed_bg_lock: sb->s_fs_info = NULL; kfree(sbi->s_blockgroup_lock); +failed_sbi: kfree(sbi); -failed_unlock: +failed: return ret; }