From: Andy Whitcroft <apw@shadowen.org>
To: Badari Pulavarty <pbadari@us.ibm.com>
Cc: Mel Gorman <mel@csn.ul.ie>, Hugh Dickins <hugh@veritas.com>,
Andrew Morton <akpm@linux-foundation.org>,
linux-mm <linux-mm@kvack.org>
Subject: Re: grow_dev_page's __GFP_MOVABLE
Date: Mon, 17 Mar 2008 10:54:12 +0000 [thread overview]
Message-ID: <20080317105412.GA3124@shadowen.org> (raw)
In-Reply-To: <1205520765.19403.59.camel@dyn9047017100.beaverton.ibm.com>
On Fri, Mar 14, 2008 at 10:52:45AM -0800, Badari Pulavarty wrote:
> On Fri, 2008-03-14 at 08:05 -0800, Badari Pulavarty wrote:
> > On Fri, 2008-03-14 at 11:47 +0000, Mel Gorman wrote:
> > > On (13/03/08 16:50), Badari Pulavarty didst pronounce:
> > > > > > <SNIP>
> > > > > > page_owner shows:
> > > > > >
> > > > > > Page allocated via order 0, mask 0x120050
> > > > > > PFN 30625 Block 7 type 2 Flags L
> > > > >
> > > > > This page is indicated as being on the LRU so it should have been possible
> > > > > to reclaim. Is memory hot-remove making any effort to reclaim this page or
> > > > > is it depending only on page migration?
> > > >
> > > > offline_pages() finds all the pages on LRU and tries to migrate them by
> > > > calling unmap_and_move(). I don't see any explicit attempt to reclaim.
> > > > It tries to migrate the page (move_to_new_page()), but what I have seen
> > > > in the past is that these pages have buffer heads attached to them.
> > > > So, migrate_page_move_mapping() fails to release the page. (BTW,
> > > > I narrowed this in Oct 2007 and forgot most of the details). I can
> > > > take a closer look again. Can we reclaim these pages easily ?
> > > >
> > >
> > > They should be, or huge page allocations using lumpy reclaim would also
> > > be failing all the time.
> >
> > Hi Mel,
> >
> > These pages are on LRU and clean. In order to reclaim these pages
> > (looking at pageout()), all we need to do is try_to_release_page().
> > fallback_migrate_page() does this but fails to free it up. What
> > else I can do here to force reclaim these ?
>
> In other words, caller has a ref on the buffer_head by calling
> getblk(). So, try_to_release_page() would fail since buffer_busy().
> These buffers could be holding meta-data (super block, bitmaps etc.)
> for a file system. Till fs gets rid of the ref, there is nothing
> much we can do. Isn't it ?
Cirtainly when fragmentation avoidance was young we did see a lot of
this as some of the meta-data was badly marked. What filesystem is this
running on?
-apw
--
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:[~2008-03-17 10:54 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-03-11 21:33 grow_dev_page's __GFP_MOVABLE Hugh Dickins
2008-03-12 14:08 ` Mel Gorman
2008-03-12 18:11 ` Hugh Dickins
2008-03-13 12:07 ` Mel Gorman
2008-03-13 15:05 ` Badari Pulavarty
2008-03-13 15:44 ` Mel Gorman
2008-03-14 0:50 ` Badari Pulavarty
2008-03-14 11:47 ` Mel Gorman
2008-03-14 16:05 ` Badari Pulavarty
2008-03-14 18:52 ` Badari Pulavarty
2008-03-17 10:54 ` Andy Whitcroft [this message]
2008-03-17 14:04 ` Badari Pulavarty
2008-03-18 9:34 ` Mel Gorman
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=20080317105412.GA3124@shadowen.org \
--to=apw@shadowen.org \
--cc=akpm@linux-foundation.org \
--cc=hugh@veritas.com \
--cc=linux-mm@kvack.org \
--cc=mel@csn.ul.ie \
--cc=pbadari@us.ibm.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.