From: Andrew Morton <akpm@linux-foundation.org>
To: Rik van Riel <riel@redhat.com>
Cc: Peter Zijlstra <peterz@infradead.org>,
Anton Altaparmakov <aia21@cam.ac.uk>,
Linux Kernel Mailing List <linux-kernel@vger.kernel.org>,
Linux Memory Management List <linux-mm@kvack.org>,
marc.smith@esmail.mcc.edu
Subject: Re: VM/VFS bug with large amount of memory and file systems?
Date: Mon, 17 Sep 2007 13:15:26 -0700 [thread overview]
Message-ID: <20070917131526.e8db80fe.akpm@linux-foundation.org> (raw)
In-Reply-To: <46EEB532.3060804@redhat.com>
On Mon, 17 Sep 2007 13:11:14 -0400
Rik van Riel <riel@redhat.com> wrote:
> > I'm guessing there is no pressure at all on zone_highmem so the
> > kernel will not try to reclaim pagecache. And because the pagecache
> > pages are happily sitting there, the buggerheads are pinned and do not
> > get reclaimed.
yeah, this got pretty unavoidably broken when we killed the global LRU
in 2.5.early. It's odd that it took this long for someone to hit it.
> I've got code for this in RHEL 3, but never bothered to
> merge it upstream since I thought people with large memory
> systems would be running 64 bit kernels by now.
>
> Obviously I was wrong. Andrew, are you interested in a
> fix for this problem?
>
> IIRC I simply kept a list of all buffer heads and walked
> that to reclaim pages when the number of buffer heads is
> too high (and we need memory). This list can be maintained
> in places where we already hold the lock for the buffer head
> freelist, so there should be no additional locking overhead
> (again, IIRC).
Christoph's slab defragmentation code should permit us to fix this:
grab a page of buffer_heads off the slab lists, trylock the page,
strip the buffer_heads. I think that would be a better approach
if we can get it going because it's more general.
WARNING: multiple messages have this Message-ID (diff)
From: Andrew Morton <akpm@linux-foundation.org>
To: Rik van Riel <riel@redhat.com>
Cc: Peter Zijlstra <peterz@infradead.org>,
Anton Altaparmakov <aia21@cam.ac.uk>,
Linux Kernel Mailing List <linux-kernel@vger.kernel.org>,
Linux Memory Management List <linux-mm@kvack.org>,
marc.smith@esmail.mcc.edu
Subject: Re: VM/VFS bug with large amount of memory and file systems?
Date: Mon, 17 Sep 2007 13:15:26 -0700 [thread overview]
Message-ID: <20070917131526.e8db80fe.akpm@linux-foundation.org> (raw)
In-Reply-To: <46EEB532.3060804@redhat.com>
On Mon, 17 Sep 2007 13:11:14 -0400
Rik van Riel <riel@redhat.com> wrote:
> > I'm guessing there is no pressure at all on zone_highmem so the
> > kernel will not try to reclaim pagecache. And because the pagecache
> > pages are happily sitting there, the buggerheads are pinned and do not
> > get reclaimed.
yeah, this got pretty unavoidably broken when we killed the global LRU
in 2.5.early. It's odd that it took this long for someone to hit it.
> I've got code for this in RHEL 3, but never bothered to
> merge it upstream since I thought people with large memory
> systems would be running 64 bit kernels by now.
>
> Obviously I was wrong. Andrew, are you interested in a
> fix for this problem?
>
> IIRC I simply kept a list of all buffer heads and walked
> that to reclaim pages when the number of buffer heads is
> too high (and we need memory). This list can be maintained
> in places where we already hold the lock for the buffer head
> freelist, so there should be no additional locking overhead
> (again, IIRC).
Christoph's slab defragmentation code should permit us to fix this:
grab a page of buffer_heads off the slab lists, trylock the page,
strip the buffer_heads. I think that would be a better approach
if we can get it going because it's more general.
--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org. For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>
next prev parent reply other threads:[~2007-09-17 20:16 UTC|newest]
Thread overview: 47+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-09-15 7:27 VM/VFS bug with large amount of memory and file systems? Anton Altaparmakov
2007-09-15 7:27 ` Anton Altaparmakov
2007-09-15 10:08 ` Peter Zijlstra
2007-09-15 10:08 ` Peter Zijlstra
2007-09-15 10:50 ` Anton Altaparmakov
2007-09-15 10:50 ` Anton Altaparmakov
2007-09-15 11:19 ` Peter Zijlstra
2007-09-15 11:19 ` Peter Zijlstra
2007-09-16 7:22 ` Kyle Moffett
2007-09-16 7:22 ` Kyle Moffett
2007-09-16 16:16 ` Peter Zijlstra
2007-09-16 16:16 ` Peter Zijlstra
2007-09-15 10:52 ` Andrew Morton
2007-09-15 10:52 ` Andrew Morton
2007-09-17 14:04 ` Anton Altaparmakov
2007-09-17 14:09 ` Anton Altaparmakov
2007-09-17 14:09 ` Anton Altaparmakov
2007-09-16 22:28 ` Nick Piggin
2007-09-16 22:28 ` Nick Piggin
2007-09-17 17:04 ` Rik van Riel
2007-09-17 17:04 ` Rik van Riel
2007-09-17 17:12 ` Nick Piggin
2007-09-17 17:12 ` Nick Piggin
2007-09-18 14:41 ` Rik van Riel
2007-09-18 14:41 ` Rik van Riel
2007-09-17 14:32 ` Peter Zijlstra
2007-09-17 14:32 ` Peter Zijlstra
2007-09-17 17:11 ` Rik van Riel
2007-09-17 17:11 ` Rik van Riel
2007-09-17 20:15 ` Andrew Morton [this message]
2007-09-17 20:15 ` Andrew Morton
2007-09-17 20:46 ` Rik van Riel
2007-09-17 20:46 ` Rik van Riel
2007-09-17 21:11 ` Andrew Morton
2007-09-17 21:11 ` Andrew Morton
2007-09-19 22:12 ` Rik van Riel
2007-09-19 22:12 ` Rik van Riel
2007-09-19 22:45 ` Andrew Morton
2007-09-19 22:45 ` Andrew Morton
2007-09-19 22:50 ` Rik van Riel
2007-09-19 22:50 ` Rik van Riel
2007-09-19 23:29 ` Christoph Lameter
2007-09-19 23:29 ` Christoph Lameter
2007-09-19 23:37 ` Andrew Morton
2007-09-19 23:37 ` Andrew Morton
2007-10-03 10:51 ` Pavel Machek
2007-10-03 10:51 ` Pavel Machek
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=20070917131526.e8db80fe.akpm@linux-foundation.org \
--to=akpm@linux-foundation.org \
--cc=aia21@cam.ac.uk \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mm@kvack.org \
--cc=marc.smith@esmail.mcc.edu \
--cc=peterz@infradead.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.