Re: Kernel BUG linux-2.5.67

Andrew Morton (akpm@digeo.com)
Tue, 8 Apr 2003 02:04:39 -0700


"dada1" <dada1@cosmosbay.com> wrote:
>
> Hello
>
> I tried linux-2.5.67 this morning...
>
> instant oops with a small multi-threaded program using futex()

Was the futex placed inside a hugetlb page? Please say yes.

There is a stunning bug.

--- 25/include/linux/mm.h~a 2003-04-08 02:03:19.000000000 -0700
+++ 25-akpm/include/linux/mm.h 2003-04-08 02:03:24.000000000 -0700
@@ -231,8 +231,8 @@ static inline void get_page(struct page
static inline void put_page(struct page *page)
{
if (PageCompound(page)) {
+ page = (struct page *)page->lru.next;
if (put_page_testzero(page)) {
- page = (struct page *)page->lru.next;
if (page->lru.prev) { /* destructor? */
(*(void (*)(struct page *))page->lru.prev)(page);
} else {

_

-
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/