[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <1157135024.18728.19.camel@localhost.localdomain>
Date: Fri, 01 Sep 2006 11:23:44 -0700
From: Dave Hansen <haveblue@...ibm.com>
To: schwidefsky@...ibm.com
Cc: Andy Whitcroft <apw@...dowen.org>, linux-kernel@...r.kernel.org,
virtualization@...ts.osdl.org, akpm@...l.org,
nickpiggin@...oo.com.au, frankeh@...son.ibm.com
Subject: Re: [patch 3/9] Guest page hinting: volatile page cache.
On Fri, 2006-09-01 at 20:04 +0200, Martin Schwidefsky wrote:
> On Fri, 2006-09-01 at 11:03 -0700, Dave Hansen wrote:
> > OK. It comes down to a race between
> >
> > __remove_from_page_cache()/__delete_from_swap_cache()
> >
> > and
> >
> > __page_discard()
> >
> > running on the same page at the same time. Right?
>
> Yes.
OK, and there's no other workable solution to exclude each other from
running at the same time than a bit in page->flags?
It seems like that hashed lock (or lock in mem_map[]) we were talking
about earlier might be applicable here, too.
Do we ever discard pages other than ones that have just recently failed
to be made stable? There seems to be a lot of
if (!page_make_stable(page) {
...
page_discard(page);
}
Some of these call sites even have mapping->page_lock held when the
page_make_stable() occurs, so they would have _already_ excluded
__remove_from_page_cache(). At which call sites is it not feasible to
acquire mapping->page_lock?
-- Dave
-
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