The 2.5 VM accounts for these pages (/proc/meminfo:Writeback) and throttling
decisions are made upon the sum of dirty+writeback pages.
The 2.5 VFS limits the amount of dirty+writeback memory, not just the amount
of dirty memory.
Throttling in both write() and the page allocator is fully decoupled from the
queue size. An 8192-slot (4 gigabyte) queue on a 32M machine has been
tested.
The only tasks which block in get_request_wait() are the ones which we want
to block there: heavy writers.
Page reclaim will never block page allocators in get_request_wait(). That
causes terrible latency if the writer is still active.
Page reclaim will never block a page-allocating process on I/O against a
particular disk block. Allocators are instead throttled against _any_ write
I/O completion. (This is broken in several ways, but it works well enough to
leave it alone I think).
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/