[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date: Tue, 10 Oct 2006 02:04:26 -0700
From: Andrew Morton <akpm@...l.org>
To: David Gibson <david@...son.dropbear.id.au>
Cc: Chen@...abs.org, Kenneth W <kenneth.w.chen@...el.com>,
linux-kernel@...r.kernel.org
Subject: Re: Hugepage regression
On Tue, 10 Oct 2006 18:47:48 +1000
David Gibson <david@...son.dropbear.id.au> wrote:
> It seems commit fe1668ae5bf0145014c71797febd9ad5670d5d05 causes a
> hugepage regression. A git bisect points the finger at that commit
> for causing an oops in the 'alloc-instantiate-race' test from the
> libhugetlbfs testsuite.
>
> Still looking to determine the reason it breaks things.
>
It's assuming that unmap_hugepage_range() is always freeing these pages.
If the page is shared by another mapping, bad things will happen: the
threads fight over page->lru.
Doing
+ if (page_count(page) == 1)
list_add(&page->lru, &page_list);
might help. But then we miss the tlb flush in rare racy conditions.
-
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