Re: [RFC] Make balance_dirty_pages zone aware (1/2)

From: Martin J. Bligh
Date: Mon Nov 24 2003 - 10:37:56 EST


>> Currently the VM decides to start doing background writeback of pages if
>> 10% of the systems pages are dirty, and starts doing synchronous
>> writeback of pages if 40% are dirty. This is great for smaller memory
>> systems, but in larger memory systems (>2GB or so), a process can dirty
>> ALL of lowmem (ZONE_NORMAL, 896MB) without hitting the 40% dirty page
>> ratio needed to force the process to do writeback.
>
> Yes, it has been that way for a year or so. I was wondering if anyone
> would hit any problems in practice. Have you hit any problem in practice?
>
> I agree that the per-zonification of this part of the VM/VFS makes some
> sense, although not _complete_ sense, because as you've seen, we need to
> perform writeout against all zones' pages if _any_ zone exceeds dirty
> limits. This could do nasty things on a 1G highmem machine, due to the
> tiny highmem zone. So maybe that zone should not trigger writeback.
>
> However the simplest fix is of course to decrease the default value of the
> dirty thresholds - put them back to the 2.4 levels. It all depends upon
> the nature of the problems which you have been observing?

I'm not sure that'll fix the problem for NUMA boxes, which is where we
started. When any node fills up completely with dirty pages (which would
only require one process doing a streaming write (eg an ftp download),
it seems we'll get into trouble. If we change the thresholds from 40% to
20%, that just means you need a slightly larger system to trigger it,
it never fixes the problem ;-(

M.

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/