[PATCH 1/5] xfs: remove ->write_super and stop maintaining ->s_dirt

Eric Sandeen sandeen at sandeen.net
Sun May 10 11:25:23 CDT 2009


Christoph Hellwig wrote:

> 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
>  (3) just before ->put_super
>
> We don't need (1) because we have our own peridoc writeout through xfssyncd,
> 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,
> and we don't need (3) because we synchronously write the superblock in
> ->put_super once the filesystem is fully shut down.
>
> Also remove ->s_dirt tracking as it's only used to decide when too call
> ->write_super.
>
Just to double check, what about sync_filesystems():

                if (sb->s_root && (wait || sb->s_dirt))
                        sb->s_op->sync_fs(sb, wait);

if we lose s_dirt does that mean we are potentially doing one less ->sync_fs 
here when called with wait = 0, and is that ok?  (/me waves hands about
sync; sync; sync magic) :)

-Eric




More information about the xfs mailing list