lkml.org 
[lkml]   [2007]   [Apr]   [24]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: Pagecache: find_or_create_page does not call a proper page allocator function
On Tue, 24 Apr 2007 13:44:50 -0700 (PDT) Christoph Lameter <clameter@sgi.com> wrote:

> On Tue, 24 Apr 2007, Andrew Morton wrote:
>
> > > I would say that the filesystem is broke if it has such expectations
> > > regardless of page migration.
> >
> > Others disagree ;)
> >
> > The filesystem has *told* the core kernel what its allocation constraints
> > are by setting up mapping_gfp_mask(). If the core kernel stops honouring
> > that request then it is core kernel which is broken.
>
> Then I think we should disable page migration for allocations that do not
> allow access to the policy zone. That would fix it.

Can't we use mapping_gfp_mask() when allocating the destination page?

It would be better to do so, really. Who knows, mapping_gfp_mask() might
be extented in the future to say "I want GFP_NOIO" or something. Or a
filesystem might specify GFP_KERNEL for regular pagecache pages or
whatever.

Generally, the interface is "address_space tells core kernel how to
allocate its pages", and to be nice we should honour that in all places
where we allocate a page for an address_space.

If we'd had any brains we would have implemented this function as an
address_space_operations callback, but we don't so we didn't.

-
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: 2007-04-24 22:57    [W:0.040 / U:0.256 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site