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

Andrea Arcangeli
2004-12-24T16:40:57Z

On Fri, Dec 24, 2004 at 11:22:54AM -0500, Rik van Riel wrote:
> 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.

Since you provided no debugging output I had to provide you the full
reccomandation. There was no sign that you didn't run out of lowmemory,
I don't know what else is running on the box with the cp.

> 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

Did you apply Con's disable-swap-token leaving the sysctl to the default
value after applying that patch?

Of course I know if you don't apply Con's fix it will run oom, you don't
need a cp for that.