Re: assert/crash in __rmqueue() when enabling CONFIG_NUMA

From: Ingo Molnar
Date: Thu May 04 2006 - 04:32:17 EST



* Bob Picco <bob.picco@xxxxxx> wrote:

> The patch below isn't compile tested or correct for those cases where
> alloc_remap is called or where arch code has allocated node_mem_map
> for CONFIG_FLAT_NODE_MEM_MAP. It's just conveying what I believe the
> issue is.

thx. One pair of parentheses were missing i think - see the delta fix
below. I'll try it.

Ingo

Index: linux/mm/page_alloc.c
===================================================================
--- linux.orig/mm/page_alloc.c
+++ linux/mm/page_alloc.c
@@ -2296,7 +2296,7 @@ static void __init alloc_node_mem_map(st
*/
start = pgdat->node_start_pfn & ~((1 << (MAX_ORDER - 1)) - 1);
end = start + pgdat->node_spanned_pages;
- end = (end + ((1 << (MAX_ORDER - 1)) - 1) &
+ end = (end + ((1 << (MAX_ORDER - 1)) - 1)) &
~((1 << (MAX_ORDER - 1)) - 1);
size = (end - start) * sizeof(struct page);
map = alloc_remap(pgdat->node_id, size);
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/