On Tue, Sep 01 2009, Christoph Hellwig wrote: > On Tue, Sep 01, 2009 at 01:18:59PM +0200, Jens Axboe wrote: > > Signed-off-by: Jens Axboe <jens.axboe@xxxxxxxxxx> > > --- > > drivers/staging/pohmelfs/inode.c | 3 ++- > > fs/fs-writeback.c | 14 +++++++------- > > fs/ubifs/budget.c | 5 +++-- > > fs/ubifs/super.c | 3 ++- > > include/linux/fs.h | 3 +-- > > include/linux/writeback.h | 2 ++ > > I think we need better calling conventions here. Currently this whole > area is on crack, we have from highest to lowest layer: > > > - sync_inodes_sb - does two totally different things based on the > wait flag. If the wait flag is set does a WB_SYNC_ALL writeout > of all pages. If not does a WB_SYNC_NONE based on some whacky > heuristics despite actually wanting to write out everything. > - sync_sb_inodes - toally useless wrapper. Introduces because reiser4 > eventually wanted to hook in there, but that needs some major > rethinking before it can happen. > - generic_sync_inodes_sb - used to implement both cases of > sync_inodes_sb, plus: > > - UBIFS budgeting writeouts, in either blocking or non-blocking > way > - UBIFS sync use that is gone in -next because we fixed sync > - a complete crackpot usage in pohmelfs, which we fortunately can > simply ignore because it's in -staging. > > > So instead of exporting generic_sync_sb_inodes which now takes just > a wbc we should just export two helpers to either data integrity sync > and SB or do a SYNC_NONE on it, both taking no other parameter than > the superblock. Agreed, that would clean it up nicely. I'll do that as a prep patch, too. -- Jens Axboe -- 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