On Mon 25-05-09 09:34:38, Jens Axboe wrote: > This is a first step at introducing per-bdi flusher threads. We should > have no change in behaviour, although sb_has_dirty_inodes() is now > ridiculously expensive, as there's no easy way to answer that question. > Not a huge problem, since it'll be deleted in subsequent patches. > > Signed-off-by: Jens Axboe <jens.axboe@xxxxxxxxxx> > --- > fs/fs-writeback.c | 196 +++++++++++++++++++++++++++--------------- > fs/super.c | 3 - > include/linux/backing-dev.h | 9 ++ > include/linux/fs.h | 5 +- > mm/backing-dev.c | 30 +++++++ > mm/page-writeback.c | 11 +-- > 6 files changed, 170 insertions(+), 84 deletions(-) ... > @@ -225,9 +231,23 @@ int bdi_register_dev(struct backing_dev_info *bdi, dev_t dev) > } > EXPORT_SYMBOL(bdi_register_dev); > > +static void bdi_remove_from_list(struct backing_dev_info *bdi) > +{ > + mutex_lock(&bdi_lock); > + list_del_rcu(&bdi->bdi_list); > + mutex_unlock(&bdi_lock); > + > + /* > + * In case the bdi is freed right after unregister, we need to > + * make sure any RCU sections have exited > + */ > + synchronize_rcu(); > +} > + Is this RCU thing still valid? And in bdi_register_dev() as well... Honza -- Jan Kara <jack@xxxxxxx> SUSE Labs, CR -- 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