> Sigh. We have sooo many problems with writeback and latency. ReadI'm sweeping bug 12309. Most people reports some data writes, though relative few explicitly stated memory pressure is another necessary condition. One interesting report is #3. Thomas reported the same slowdown _without_ any IO. He was able to narrow down the bug to somewhere between 2.6.20.21 and 2.6.22.19. I searched through the git and found a congestion_wait() in commit 232ea4d69d (throttle_vm_writeout(): don't loop on GFP_NOFS and GFP_NOIO allocations) which was later removed by commit 369f2389e7 (writeback: remove unnecessary wait in throttle_vm_writeout()). How can the congestion_wait(HZ/10) be a problem? Because it unconditionally enters wait loop. So if no IO is underway, it virtually becomes a schedule_timeout(HZ/10) because there are no IO completion events to wake it up. Thanks, Fengguang --
