diff options
author | Jan Kara <jack@suse.cz> | 2012-03-31 14:22:10 +0200 |
---|---|---|
committer | Jan Kara <jack@suse.cz> | 2012-04-11 11:12:45 +0200 |
commit | b838ec2232b764a4903707e212c62f681b32cd51 (patch) | |
tree | 31967c9821f019d97fdb6882a0b31d41db3d10e5 /fs/ext2/ialloc.c | |
parent | f2b2242081314ee4385f3b49d92b0adff8324d80 (diff) | |
download | lwn-b838ec2232b764a4903707e212c62f681b32cd51.tar.gz lwn-b838ec2232b764a4903707e212c62f681b32cd51.zip |
ext2: Remove s_dirt handling
Places which modify superblock feature / state fields mark the superblock
buffer dirty so it is written out by flusher thread. Thus there's no need to
set s_dirt there.
The only other fields changing in the superblock are the numbers of free
blocks, free inodes and s_wtime. There's no real need to write (or even
compute) these periodically. Free blocks / inodes counters are recomputed on
every mount from group counters anyway and value of s_wtime is only
informational and imprecise anyway. So it should be enough to write these
opportunistically on mount, remount, umount, and sync_fs times.
Signed-off-by: Jan Kara <jack@suse.cz>
Diffstat (limited to 'fs/ext2/ialloc.c')
-rw-r--r-- | fs/ext2/ialloc.c | 2 |
1 files changed, 0 insertions, 2 deletions
diff --git a/fs/ext2/ialloc.c b/fs/ext2/ialloc.c index 8b15cf8cef37..c13eb7b91a11 100644 --- a/fs/ext2/ialloc.c +++ b/fs/ext2/ialloc.c @@ -81,7 +81,6 @@ static void ext2_release_inode(struct super_block *sb, int group, int dir) spin_unlock(sb_bgl_lock(EXT2_SB(sb), group)); if (dir) percpu_counter_dec(&EXT2_SB(sb)->s_dirs_counter); - sb->s_dirt = 1; mark_buffer_dirty(bh); } @@ -543,7 +542,6 @@ got: } spin_unlock(sb_bgl_lock(sbi, group)); - sb->s_dirt = 1; mark_buffer_dirty(bh2); if (test_opt(sb, GRPID)) { inode->i_mode = mode; |