xfs: remove ->write_super and stop maintaining ->s_dirt
PATCH 1/1 xfs: remove ->write_super and stop maintaining ->s_dirt
Al, can you put this in via the vfs tree? With people starting to change these bits now I think we're better off feeding this through the VFS tree early than later via the XFS tree.
--
Subject: [PATCH] xfs: remove ->write_super and stop maintaining ->s_dirt
From: Christoph Hellwig <[email protected]>
the write_super method is used for
(1) writing back the superblock periodically from pdflush
(2) called just before ->sync_fs for data integerity syncs
We don't need (1) because we have our own peridoc writeout through xfssyncd, and we don't need (2) because xfs_fs_sync_fs performs a proper synchronous superblock writeout after all other data and metadata has been written out.
Also remove ->s_dirt tracking as it's only used to decide when too call ->write_super.
fs/xfs/linux-2.6/xfs_super.c +0 -12
@@ -1108,15 +1108,6 @@ xfs_fs_put_super(unlock_kernel (); } -STATIC void -xfs_fs_write_super ( -struct super_block *sb) -{ -if (!(sb->s_flags &MS_RDONLY )) -xfs_sync_fsdata (XFS_M (sb),0 ); - sb->s_dirt =0 ; -} - STATIC int xfs_fs_sync_super( struct super_block *sb,
@@ -1141,7 +1132,6 @@ xfs_fs_sync_super( error =xfs_quiesce_data (mp); else error =xfs_sync_fsdata (mp,0 ); - sb->s_dirt =0 ;if (unlikely (laptop_mode)) {int prev_sync_seq = mp->m_sync_seq;
@@ -1447,7 +1437,6 @@ xfs_fs_fill_super(XFS_SEND_MOUNT (mp,DM_RIGHT_NULL , mtpt, mp->m_fsname); - sb->s_dirt =1 ; sb->s_magic =XFS_SB_MAGIC ; sb->s_blocksize = mp->m_sb.sb_blocksize; sb->s_blocksize_bits =ffs (sb->s_blocksize) -1 ;
@@ -1537,7 +1526,6 @@ static struct super_operations xfs_super .write_inode = xfs_fs_write_inode, .clear_inode = xfs_fs_clear_inode, .put_super = xfs_fs_put_super, - .write_super = xfs_fs_write_super, .sync_fs = xfs_fs_sync_super, .freeze_fs = xfs_fs_freeze, .statfs = xfs_fs_statfs,
fs/xfs/xfs_trans.c +0 -2
@@ -628,8 +628,6 @@ xfs_trans_apply_sb_deltas(xfs_trans_log_buf (tp, bp, offsetof(xfs_dsb_t , sb_icount), offsetof(xfs_dsb_t , sb_frextents) +sizeof (sbp->sb_frextents) -1 ); - - tp->t_mountp->m_super->s_dirt =1 ; }/*
_______________________________________________
xfs mailing list
[email protected]
http://oss.sgi.com/mailman/listinfo/xfs