On Mon 01-11-10 20:07:33, Wu Fengguang wrote: > On Tue, Sep 14, 2010 at 08:40:33PM +0800, Jan Kara wrote: > > Background writeback are easily livelockable (from a definition of their > > target). This is inconvenient because it can make sync(1) stall forever waiting > > on its queued work to be finished. Generally, when a flusher thread has > > some work queued, someone submitted the work to achieve a goal more specific > > than what background writeback does. So it makes sense to give it a priority > > over a generic page cleaning. > > > > Thus we interrupt background writeback if there is some other work to do. We > > return to the background writeback after completing all the queued work. > > > > Could you please update it? Thanks. > > Honza > > > > PS: I've also attached the full patch if that's more convenient for you. > > You patches are more complete than mine, so let's use them. However I > do prefer to have a standalone wb_check_background_flush() that is > called _after_ wb_check_old_data_flush(). This helps make the writeout > a bit more ordered and the separation itself looks a bit more clean to > me. > > Followed are the slightly updated patches. IMHO they are straightforward > fixes that could be merged before other writeback changes. Yes, the updated patch looks OK to me. Thanks for picking the patches up. Honza -- Jan Kara <jack@xxxxxxx> SUSE Labs, CR -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@xxxxxxxxxx For more info on Linux MM, see: http://www.linux-mm.org/ . Fight unfair telecom policy in Canada: sign http://dissolvethecrtc.ca/ Don't email: <a href=mailto:"dont@xxxxxxxxx"> email@xxxxxxxxx </a>