From mboxrd@z Thu Jan 1 00:00:00 1970 From: Artem Bityutskiy Subject: [PATCH v2.1 02/17] AFFS: do not manipulate s_dirt directly Date: Fri, 5 Jun 2009 16:05:40 +0300 Message-ID: <1244207155-2092-3-git-send-email-dedekind@infradead.org> References: <1244207155-2092-1-git-send-email-dedekind@infradead.org> Cc: linux-kernel@vger.kernel.org, linux-fsdevel@vger.kernel.org, Christoph Hellwig , Artem Bityutskiy , Roman Zippel To: Al Viro Return-path: Received: from smtp.nokia.com ([192.100.122.230]:49232 "EHLO mgw-mx03.nokia.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1754099AbZFELNU (ORCPT ); Fri, 5 Jun 2009 07:13:20 -0400 In-Reply-To: <1244207155-2092-1-git-send-email-dedekind@infradead.org> Sender: linux-fsdevel-owner@vger.kernel.org List-ID: From: Artem Bityutskiy ... use new VFS helpers instead. Signed-off-by: Artem Bityutskiy Cc: Roman Zippel --- fs/affs/bitmap.c | 4 ++-- fs/affs/super.c | 12 ++++++++---- 2 files changed, 10 insertions(+), 6 deletions(-) diff --git a/fs/affs/bitmap.c b/fs/affs/bitmap.c index dc5ef14..0be510c 100644 --- a/fs/affs/bitmap.c +++ b/fs/affs/bitmap.c @@ -102,7 +102,7 @@ affs_free_block(struct super_block *sb, u32 block) *(__be32 *)bh->b_data = cpu_to_be32(tmp - mask); mark_buffer_dirty(bh); - sb->s_dirt = 1; + mark_sb_dirty(sb); bm->bm_free++; mutex_unlock(&sbi->s_bmlock); @@ -247,7 +247,7 @@ find_bit: *(__be32 *)bh->b_data = cpu_to_be32(tmp + mask); mark_buffer_dirty(bh); - sb->s_dirt = 1; + mark_sb_dirty(sb); mutex_unlock(&sbi->s_bmlock); diff --git a/fs/affs/super.c b/fs/affs/super.c index 280d361..8c105d5 100644 --- a/fs/affs/super.c +++ b/fs/affs/super.c @@ -64,9 +64,13 @@ affs_write_super(struct super_block *sb) &AFFS_ROOT_TAIL(sb, sbi->s_root_bh)->disk_change); affs_fix_checksum(sb, sbi->s_root_bh); mark_buffer_dirty(sbi->s_root_bh); - sb->s_dirt = !clean; /* redo until bitmap synced */ + /* redo until bitmap synced */ + if (clean) + mark_sb_clean(sb); + else + mark_sb_dirty(sb); } else - sb->s_dirt = 0; + mark_sb_clean(sb); unlock_super(sb); pr_debug("AFFS: write_super() at %lu, clean=%d\n", get_seconds(), clean); @@ -522,8 +526,8 @@ affs_remount(struct super_block *sb, int *flags, char *data) if ((*flags & MS_RDONLY) == (sb->s_flags & MS_RDONLY)) return 0; if (*flags & MS_RDONLY) { - sb->s_dirt = 1; - while (sb->s_dirt) + mark_sb_dirty(sb); + while (is_sb_dirty(sb)) affs_write_super(sb); affs_free_bitmap(sb); } else -- 1.6.0.6