From patchwork Fri Jun 5 13:05:44 2009 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Artem Bityutskiy X-Patchwork-Id: 28144 Return-Path: X-Original-To: patchwork-incoming@bilbo.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Received: from ozlabs.org (ozlabs.org [203.10.76.45]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (Client CN "mx.ozlabs.org", Issuer "CA Cert Signing Authority" (verified OK)) by bilbo.ozlabs.org (Postfix) with ESMTPS id 12D5DB708F for ; Fri, 5 Jun 2009 21:14:03 +1000 (EST) Received: by ozlabs.org (Postfix) id 01CB1DDD0C; Fri, 5 Jun 2009 21:14:03 +1000 (EST) Delivered-To: patchwork-incoming@ozlabs.org Received: from vger.kernel.org (vger.kernel.org [209.132.176.167]) by ozlabs.org (Postfix) with ESMTP id 94211DDD04 for ; Fri, 5 Jun 2009 21:14:02 +1000 (EST) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754419AbZFELN0 (ORCPT ); Fri, 5 Jun 2009 07:13:26 -0400 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S1754374AbZFELNZ (ORCPT ); Fri, 5 Jun 2009 07:13:25 -0400 Received: from smtp.nokia.com ([192.100.122.233]:52246 "EHLO mgw-mx06.nokia.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752279AbZFELNW (ORCPT ); Fri, 5 Jun 2009 07:13:22 -0400 Received: from esebh106.NOE.Nokia.com (esebh106.ntc.nokia.com [172.21.138.213]) by mgw-mx06.nokia.com (Switch-3.2.6/Switch-3.2.6) with ESMTP id n55BD10n009869; Fri, 5 Jun 2009 14:13:04 +0300 Received: from vaebh104.NOE.Nokia.com ([10.160.244.30]) by esebh106.NOE.Nokia.com with Microsoft SMTPSVC(6.0.3790.3959); Fri, 5 Jun 2009 14:12:57 +0300 Received: from mgw-da02.ext.nokia.com ([147.243.128.26]) by vaebh104.NOE.Nokia.com over TLS secured channel with Microsoft SMTPSVC(6.0.3790.3959); Fri, 5 Jun 2009 14:12:56 +0300 Received: from localhost.localdomain (esdhcp04227.research.nokia.com [172.21.42.27]) by mgw-da02.ext.nokia.com (Switch-3.2.6/Switch-3.2.6) with ESMTP id n55BCaHr021873; Fri, 5 Jun 2009 14:12:50 +0300 From: Artem Bityutskiy To: Al Viro Cc: linux-kernel@vger.kernel.org, linux-fsdevel@vger.kernel.org, Christoph Hellwig , Artem Bityutskiy , linux-ext4@vger.kernel.org, "Theodore Ts'o" Subject: [PATCH v2.1 06/17] EXT4: do not manipulate s_dirt directly Date: Fri, 5 Jun 2009 16:05:44 +0300 Message-Id: <1244207155-2092-7-git-send-email-dedekind@infradead.org> X-Mailer: git-send-email 1.6.0.6 In-Reply-To: <1244207155-2092-1-git-send-email-dedekind@infradead.org> References: <1244207155-2092-1-git-send-email-dedekind@infradead.org> X-OriginalArrivalTime: 05 Jun 2009 11:12:56.0962 (UTC) FILETIME=[9439F620:01C9E5CE] X-Nokia-AV: Clean Sender: linux-ext4-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-ext4@vger.kernel.org From: Artem Bityutskiy ... use new VFS helpers instead. Signed-off-by: Artem Bityutskiy Cc: linux-ext4@vger.kernel.org Cc: Theodore Ts'o --- fs/ext4/balloc.c | 2 +- fs/ext4/ialloc.c | 4 ++-- fs/ext4/inode.c | 2 +- fs/ext4/mballoc.c | 4 ++-- fs/ext4/resize.c | 4 ++-- fs/ext4/super.c | 16 ++++++++-------- fs/ext4/xattr.c | 2 +- 7 files changed, 17 insertions(+), 17 deletions(-) diff --git a/fs/ext4/balloc.c b/fs/ext4/balloc.c index 53c72ad..ccb83ff 100644 --- a/fs/ext4/balloc.c +++ b/fs/ext4/balloc.c @@ -490,7 +490,7 @@ void ext4_add_groupblocks(handle_t *handle, struct super_block *sb, ret = ext4_handle_dirty_metadata(handle, NULL, gd_bh); if (!err) err = ret; - sb->s_dirt = 1; + mark_sb_dirty(sb); error_return: brelse(bitmap_bh); diff --git a/fs/ext4/ialloc.c b/fs/ext4/ialloc.c index f18e0a0..949e4a7 100644 --- a/fs/ext4/ialloc.c +++ b/fs/ext4/ialloc.c @@ -297,7 +297,7 @@ void ext4_free_inode(handle_t *handle, struct inode *inode) err = ext4_handle_dirty_metadata(handle, NULL, bitmap_bh); if (!fatal) fatal = err; - sb->s_dirt = 1; + mark_sb_dirty(sb); error_return: brelse(bitmap_bh); ext4_std_error(sb, fatal); @@ -968,7 +968,7 @@ got: percpu_counter_dec(&sbi->s_freeinodes_counter); if (S_ISDIR(mode)) percpu_counter_inc(&sbi->s_dirs_counter); - sb->s_dirt = 1; + mark_sb_dirty(sb); if (sbi->s_log_groups_per_flex) { flex_group = ext4_flex_group(sbi, group); diff --git a/fs/ext4/inode.c b/fs/ext4/inode.c index e91f978..743ca39 100644 --- a/fs/ext4/inode.c +++ b/fs/ext4/inode.c @@ -4598,7 +4598,7 @@ static int ext4_do_update_inode(handle_t *handle, ext4_update_dynamic_rev(sb); EXT4_SET_RO_COMPAT_FEATURE(sb, EXT4_FEATURE_RO_COMPAT_LARGE_FILE); - sb->s_dirt = 1; + mark_sb_dirty(sb); ext4_handle_sync(handle); err = ext4_handle_dirty_metadata(handle, inode, EXT4_SB(sb)->s_sbh); diff --git a/fs/ext4/mballoc.c b/fs/ext4/mballoc.c index f871677..191cf37 100644 --- a/fs/ext4/mballoc.c +++ b/fs/ext4/mballoc.c @@ -3054,7 +3054,7 @@ ext4_mb_mark_diskspace_used(struct ext4_allocation_context *ac, err = ext4_handle_dirty_metadata(handle, NULL, gdp_bh); out_err: - sb->s_dirt = 1; + mark_sb_dirty(sb); brelse(bitmap_bh); return err; } @@ -4909,7 +4909,7 @@ do_more: put_bh(bitmap_bh); goto do_more; } - sb->s_dirt = 1; + mark_sb_dirty(sb); error_return: brelse(bitmap_bh); ext4_std_error(sb, err); diff --git a/fs/ext4/resize.c b/fs/ext4/resize.c index 546c7dd..323d741 100644 --- a/fs/ext4/resize.c +++ b/fs/ext4/resize.c @@ -945,7 +945,7 @@ int ext4_group_add(struct super_block *sb, struct ext4_new_group_data *input) } ext4_handle_dirty_metadata(handle, NULL, sbi->s_sbh); - sb->s_dirt = 1; + mark_sb_dirty(sb); exit_journal: unlock_super(sb); @@ -1076,7 +1076,7 @@ int ext4_group_extend(struct super_block *sb, struct ext4_super_block *es, } ext4_blocks_count_set(es, o_blocks_count + add); ext4_handle_dirty_metadata(handle, NULL, EXT4_SB(sb)->s_sbh); - sb->s_dirt = 1; + mark_sb_dirty(sb); unlock_super(sb); ext4_debug("freeing blocks %llu through %llu\n", o_blocks_count, o_blocks_count + add); diff --git a/fs/ext4/super.c b/fs/ext4/super.c index d789833..017052a 100644 --- a/fs/ext4/super.c +++ b/fs/ext4/super.c @@ -566,7 +566,7 @@ static void ext4_put_super(struct super_block *sb) lock_super(sb); lock_kernel(); - if (sb->s_dirt) + if (is_sb_dirty(sb)) ext4_write_super_locked(sb); ext4_mb_release(sb); @@ -2482,7 +2482,7 @@ static int ext4_fill_super(struct super_block *sb, void *data, int silent) #else es->s_flags |= cpu_to_le32(EXT2_FLAGS_SIGNED_HASH); #endif - sb->s_dirt = 1; + mark_sb_dirty(sb); } if (sbi->s_blocks_per_group > blocksize * 8) { @@ -3117,7 +3117,7 @@ static int ext4_load_journal(struct super_block *sb, if (journal_devnum && journal_devnum != le32_to_cpu(es->s_journal_dev)) { es->s_journal_dev = cpu_to_le32(journal_devnum); - sb->s_dirt = 1; + mark_sb_dirty(sb); /* Make sure we flush the recovery flag to disk. */ ext4_commit_super(sb, es, 1); @@ -3199,7 +3199,7 @@ static void ext4_mark_recovery_complete(struct super_block *sb, if (EXT4_HAS_INCOMPAT_FEATURE(sb, EXT4_FEATURE_INCOMPAT_RECOVER) && sb->s_flags & MS_RDONLY) { EXT4_CLEAR_INCOMPAT_FEATURE(sb, EXT4_FEATURE_INCOMPAT_RECOVER); - sb->s_dirt = 0; + mark_sb_clean(sb); ext4_commit_super(sb, es, 1); } unlock_super(sb); @@ -3261,7 +3261,7 @@ int ext4_force_commit(struct super_block *sb) journal = EXT4_SB(sb)->s_journal; if (journal) { - sb->s_dirt = 0; + mark_sb_clean(sb); ret = ext4_journal_force_commit(journal); } @@ -3279,7 +3279,7 @@ static void ext4_write_super_locked(struct super_block *sb) if (EXT4_SB(sb)->s_journal) { if (mutex_trylock(&sb->s_lock) != 0) BUG(); - sb->s_dirt = 0; + mark_sb_clean(sb); } else { ext4_commit_super(sb, EXT4_SB(sb)->s_es, 1); } @@ -3298,7 +3298,7 @@ static int ext4_sync_fs(struct super_block *sb, int wait) tid_t target; trace_mark(ext4_sync_fs, "dev %s wait %d", sb->s_id, wait); - sb->s_dirt = 0; + mark_sb_clean(sb); if (EXT4_SB(sb)->s_journal) { if (jbd2_journal_start_commit(EXT4_SB(sb)->s_journal, &target)) { @@ -3320,7 +3320,7 @@ static int ext4_freeze(struct super_block *sb) { int error = 0; journal_t *journal; - sb->s_dirt = 0; + mark_sb_clean(sb); if (!(sb->s_flags & MS_RDONLY)) { journal = EXT4_SB(sb)->s_journal; diff --git a/fs/ext4/xattr.c b/fs/ext4/xattr.c index 62b31c2..3589b7a 100644 --- a/fs/ext4/xattr.c +++ b/fs/ext4/xattr.c @@ -456,7 +456,7 @@ static void ext4_xattr_update_super_block(handle_t *handle, if (ext4_journal_get_write_access(handle, EXT4_SB(sb)->s_sbh) == 0) { EXT4_SET_COMPAT_FEATURE(sb, EXT4_FEATURE_COMPAT_EXT_ATTR); - sb->s_dirt = 1; + mark_sb_dirty(sb); ext4_handle_dirty_metadata(handle, NULL, EXT4_SB(sb)->s_sbh); } }