On Mon, May 25 2009, Jan Kara wrote: > > +static void bdi_kupdated(struct backing_dev_info *bdi) > > +{ > > + unsigned long oldest_jif; > > + long nr_to_write; > > + struct writeback_control wbc = { > > + .bdi = bdi, > > + .sync_mode = WB_SYNC_NONE, > > + .older_than_this = &oldest_jif, > > + .nr_to_write = 0, > > + .for_kupdate = 1, > > + .range_cyclic = 1, > > + }; > > + > > + sync_supers(); > Hmm, so each BDI flusher thread is going to sync all the superblocks? > Isn't there a better way? I suppose we *should* be able to somehow go > from a BDI to a superblock (or maybe a list of those) so that we can write > per-fs metadata not bound to inodes. I just moved the sync_supers() to the bdi_forker_task(). That makes it global at the same interval of wakeups, instead of doing in the bdi threads. It would be nice to sync locally instead, but that's something that can wait for later (if ever). -- 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