On Jan 15, 2008 4:36 AM, Fengguang Wu <wfg@xxxxxxxxxxxxxxxx> wrote: > Andrew, > > This patchset mainly polishes the writeback queuing policies. > The main goals are: > > (1) small files should not be starved by big dirty files > (2) sync as fast as possible for not-blocked inodes/pages > - don't leave them out; no congestion_wait() in between them > (3) avoid busy iowait for blocked inodes > - retry them in the next go of s_io(maybe at the next wakeup of pdflush) > > The role of the queues: > > s_dirty: park for dirtied_when expiration > s_io: park for io submission > s_more_io: for big dirty inodes, they will be retried in this run of pdflush > (it ensures fairness between small/large files) > s_more_io_wait: for blocked inodes, they will be picked up in next run of s_io Quick question to make sure I get this. Each queue is sorted as such: s_dirty - sorted by the dirtied_when field s_io - sorted by no explicit key but by the order we want to process in sync_sb_inodes s_more_io - held for later they are sorted in the same manner as s_io Is that it? mrubin - 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