On Thu, 2010-05-27 at 07:50 +0100, Al Viro wrote: > On Tue, May 25, 2010 at 04:49:12PM +0300, Artem Bityutskiy wrote: > > From: Artem Bityutskiy <Artem.Bityutskiy@xxxxxxxxx> > > +void mark_sb_dirty(struct super_block *sb) > > +{ > > + sb->s_dirty = 1; > > + > > + spin_lock(&supers_timer_lock); > > + if (!supers_timer_armed) { > > + bdi_arm_supers_timer(); > > + supers_timer_armed = 1; > > + } else if (supers_timer_armed == -1) > > + supers_timer_armed = 1; > > + spin_unlock(&supers_timer_lock); > > +} > > +EXPORT_SYMBOL(mark_sb_dirty); > > Ouch... That turns a previously trivial operation into something > much heavier; moreover, I'd rather see serious review of s_dirt > uses. OK, I'll try to do something lighter with atomic variables or something like Nick posted - need to think about this. And I'll try to review s_dirty usage as much as my time and knowledge allow. Thanks. -- 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