[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20070307094503.GD8609@wotan.suse.de>
Date: Wed, 7 Mar 2007 10:45:03 +0100
From: Nick Piggin <npiggin@...e.de>
To: Peter Zijlstra <a.p.zijlstra@...llo.nl>
Cc: Andrew Morton <akpm@...ux-foundation.org>,
Miklos Szeredi <miklos@...redi.hu>, mingo@...e.hu,
linux-mm@...ck.org, linux-kernel@...r.kernel.org,
benh@...nel.crashing.org
Subject: Re: [patch 4/6] mm: merge populate and nopage into fault (fixes nonlinear)
On Wed, Mar 07, 2007 at 10:32:22AM +0100, Peter Zijlstra wrote:
> On Wed, 2007-03-07 at 01:07 -0800, Andrew Morton wrote:
> > On Wed, 07 Mar 2007 09:51:57 +0100 Miklos Szeredi <miklos@...redi.hu> wrote:
> >
> > > > > Dirty page accounting doesn't work either on
> > > > > non-linear mappings
> > > >
> > > > It doesn't? Confused - these things don't have anything to do with each
> > > > other do they?
> > >
> > > Look in page_mkclean(). Where does it handle non-linear mappings?
> > >
> >
> > OK, I'd forgotten about that. It won't break dirty memory accounting,
> > but it'll potentially break dirty memory balancing.
> >
> > If we have the wrong page (due to nonlinear), page_check_address() will
> > fail and we'll leave the pte dirty. That puts us back to the pre-2.6.17
> > algorithms and I guess it'll break the msync guarantees.
> >
> > Peter, I thought we went through the nonlinear problem ages ago and decided
> > it was OK?
>
> Can recollect as much, I modelled it after page_referenced() and can't
> find any VM_NONLINEAR specific code in there either.
>
> Will have a hard look, but if its broken, then page_referenced if
> equally broken it seems, which would make page reclaim funny in the
> light of nonlinear mappings.
page_referenced is just an heuristic, and it ignores nonlinear mappings
and the page which will get filtered down to try_to_unmap.
Page reclaim is already "funny" for nonlinear mappings, page_referenced
is the least of its worries ;) It works, though.
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists