lkml.org 
[lkml]   [2005]   [Aug]   [10]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
SubjectRe: How to reclaim inode pages on demand
From
Date
On Wed, 2005-08-10 at 18:27 +0100, Mel Gorman wrote:
> I later linearly scan the mem_map looking for pages that can be freed up
> (usually LRU pages). I was expecting any page with PG_inode set to have a
> page->mapping but not all of them do. It is the pages without a ->mapping
> that are confusing the hell out of me.

How about putting a check for PG_inode and a periodic dump_stack()
wherever page->mapping is cleared? That should at least let you catch
the culprit who is clearing them. __remove_from_page_cache() is the only
real place I see this being done.

Are you remembering to clean PG_inode when a page is freed? Perhaps
it's allocated for the page cache, reclaimed, returned to the allocator,
and reallocated as anonymous memory where you're seeing the null
->mapping. Might want to check for PG_inode in free_pages_check().

-- Dave

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/

\
 
 \ /
  Last update: 2005-08-10 19:54    [W:0.064 / U:0.060 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site