On Fri, 2010-06-11 at 12:31 -0400, Christoph Hellwig wrote: > On Fri, Jun 11, 2010 at 06:05:20PM +0300, Artem Bityutskiy wrote: > > From: Artem Bityutskiy <Artem.Bityutskiy@xxxxxxxxx> > > > > AFFS does not ever wait for superblock synchronization in > > ->put_super(), ->write_super, and ->sync_fs(). > > > > However, it should wait for synchronization in ->put_super() because > > it is about to be unmounted, in ->write_super() because this is > > periodic SB synchronization performed from a separate kernel thread, > > and in ->sync_fs() it should respect the 'wait' flag. This patch fixes > > the situation. > > > > Also, in ->put_super(), do not write the SB if it is not dirty. > > ->sync_fs should also wait for the superblock I/O to be completed. Err, depending on the 'wait' flag? I did: @@ -74,7 +76,7 @@ static int affs_sync_fs(struct super_block *sb, int wait) { lock_super(sb); - affs_commit_super(sb, 2); + affs_commit_super(sb, wait, 2); sb->s_dirt = 0; unlock_super(sb); return 0; -- Best Regards, Artem Bityutskiy (Артём Битюцкий) -- To unsubscribe from this list: send the line "unsubscribe linux-fsdevel" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html