Re: [PATCH][1/2] adjust dirty threshold for lowmem-only mappings

Rik van Riel
2004-12-24T16:23:10Z

On Fri, 24 Dec 2004, Andrea Arcangeli wrote:

> So I recommend you to try again with at least "Andrew's
> ignore-swap-token, Andrew's total_scanned, Con's disable-swap-token and
> my lowmem_reserve". Effectively disable-swap-token obsoletes
> ignore-swap-token, but both makes sense together since just in case
> somebody enables the feature, ignore-swap-token will give it a chance
> not to generate a suprious oom kills.

That makes little sense, since 99% of lowmem is in the page
cache and not mapped into any process, so the swap token
won't get involved at all. Same for the lowmem_reserve patch,
since the pagecache allocations for dding to a block device
do not use __GFP_HIGHMEM, so the lowmem_reserve protection of
low memory won't be activated.

I am already running with akpm's total_scanned, my lowering of
the dirty limit for non-highmem capable mappings and my "do not
OOM kill if we had to skip writes due to congestion" patch.

The system can still be made to OOM kill, it just takes a day
instead of a few minutes. And no, the process text, data and
libraries all live in highmem, which isn't scanned by the VM
because there's still 2.7GB free...

--
"Debugging is twice as hard as writing the code in the first place.
Therefore, if you write the code as cleverly as possible, you are,
by definition, not smart enough to debug it." - Brian W. Kernighan