From: Andrea Arcangeli <andrea@suse.de>
To: Rik van Riel <riel@redhat.com>
Cc: Andrew Morton <akpm@osdl.org>,
linux-kernel@vger.kernel.org, Robert_Hentosh@Dell.com,
Con Kolivas <kernel@kolivas.org>
Subject: Re: [PATCH][1/2] adjust dirty threshold for lowmem-only mappings
Date: Sat, 25 Dec 2004 19:36:29 +0100 [thread overview]
Message-ID: <20041225183629.GV13747@dualathlon.random> (raw)
In-Reply-To: <Pine.LNX.4.61.0412251253090.18130@chimarrao.boston.redhat.com>
On Sat, Dec 25, 2004 at 12:59:10PM -0500, Rik van Riel wrote:
> 4) any memory that could be affected by the swap token (process
> text, data, stack, ...) is allocated with __GFP_HIGHMEM, so
> that all lives in the highmem zone with 2.5GB free
> 5) since dd is not being paged out at all, and can dirty memory
> without limit, the VM gets backed into a corner and will
> trigger an OOM kill - even though most of lowmem is simply
> dirty page cache
This shouldn't happen of course, and it's a bit hard to see how can it
work fine for 23 hours and break at the 24th hour since it's quite a
repetitive algorithm. (sure it could be a race or the algorithm being
very fragile, but I can't reproduce problems here)
Plus doing cp /dev/zero . should be even worse since it also fills up
the highmem.
Are you sure cron isn't spawning something big?
Anyway my point is that swap-token is _proven_ to trigger suprious oom
kills, so if you could just reproduce once with Con's patch applied and
default sysctl value, then you would provide the proof it's unrelated.
I agree with your reasoning, I think you're right, but I'd like to be
sure we're not missing something. There are definitely other reports
where the ignore-token patch wasn't enough and Con's patch fixed it.
I also recommend you to keep vmstat in the background, in my experience
swap token was filling all swap with freeable swapcache (but it wasn't
freeable due the referenced ++ that swap-token does), and then the oom
killer was invoked despite all that freeable swapcache.
So on a computer that had plenty of lowmem and highmem free, in seconds
it would run out of memory with all swap allocated.
I agree dd shouldn't be enough, but the 1 day variable may be just some
big cron task that we didn't put into the equation.
So I still would like to see a `vmstat 1` before/after the killing, and
to hear the confirmation that Con's patch doesn't help.
The only thing I can imagine being wrong with `cp /dev/zero /dev/sd?`
while working fine on `cp /dev/zero .`, are the write throttling levels
that might be taking highmem into account while they really cannot take
highmem into account, I mean nr_free_buffer_pages must be used by the
write throttling and not nr_free_pages, but I'd be surprised if this
wasn't correct. You may want to check this bit just in case. If this is
correct then doing cp /dev/zero . should fail too, no? I for sure can't
reproduce here, and by your same arguments about the highmem levels, it
shouldn't matter how much ram I have (I've 1G). The less ram I have, the
worse it should behave.
Without more data and without being able to reproduce I can't be more
helpful than this.
Thanks.
next prev parent reply other threads:[~2004-12-25 18:37 UTC|newest]
Thread overview: 27+ messages / expand[flat|nested] mbox.gz Atom feed top
2004-12-20 15:15 [PATCH][1/2] adjust dirty threshold for lowmem-only mappings Rik van Riel
2004-12-20 15:23 ` Rik van Riel
2004-12-20 20:54 ` Andrew Morton
2004-12-20 21:27 ` Rik van Riel
2004-12-23 19:21 ` Rik van Riel
2004-12-24 16:01 ` Andrea Arcangeli
2004-12-24 16:22 ` Rik van Riel
2004-12-24 16:40 ` Andrea Arcangeli
2004-12-24 22:12 ` Rik van Riel
2004-12-25 2:07 ` Andrea Arcangeli
2004-12-25 17:59 ` Rik van Riel
2004-12-25 18:36 ` Andrea Arcangeli [this message]
2004-12-25 19:07 ` William Lee Irwin III
2004-12-25 20:03 ` Andrea Arcangeli
2004-12-26 3:07 ` William Lee Irwin III
2005-01-02 16:10 ` Andrea Arcangeli
2005-01-02 16:36 ` William Lee Irwin III
2005-01-02 16:53 ` Rik van Riel
2005-01-02 17:21 ` Andrea Arcangeli
2004-12-25 22:03 ` Nikita Danilov
2004-12-26 3:16 ` William Lee Irwin III
2005-01-02 15:11 ` Jens Axboe
2005-01-02 16:18 ` Andrea Arcangeli
2005-01-02 20:03 ` Andrew Morton
2005-01-02 20:25 ` William Lee Irwin III
-- strict thread matches above, loose matches on Subject: below --
2004-12-20 16:46 Robert_Hentosh
2004-12-20 17:56 ` Sami Farin
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20041225183629.GV13747@dualathlon.random \
--to=andrea@suse.de \
--cc=Robert_Hentosh@Dell.com \
--cc=akpm@osdl.org \
--cc=kernel@kolivas.org \
--cc=linux-kernel@vger.kernel.org \
--cc=riel@redhat.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox