Re: [PATCH] Fix find_next_best_node (Re: [BUG] 2.6.23-rc3-mm1 Kernelpanic - not syncing: DMA: Memory would be corrupted)

From: Kamalesh Babulal
Date: Fri Aug 24 2007 - 12:47:07 EST


Yasunori Goto wrote:
I found find_next_best_node() was wrong.
I confirmed boot up by the following patch.
Mel-san, Kamalesh-san, could you try this?

Bye.
---

Fix decision of memoryless node in find_next_best_node().
This can be cause of SW-IOMMU's allocation failure.

This patch is for 2.6.23-rc3-mm1.

Signed-off-by: Yasunori Goto <y-goto@xxxxxxxxxxxxxx>

---
mm/page_alloc.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

Index: current/mm/page_alloc.c
===================================================================
--- current.orig/mm/page_alloc.c 2007-08-24 16:03:17.000000000 +0900
+++ current/mm/page_alloc.c 2007-08-24 16:04:06.000000000 +0900
@@ -2136,7 +2136,7 @@ static int find_next_best_node(int node,
* Note: N_HIGH_MEMORY state not guaranteed to be
* populated yet.
*/
- if (pgdat->node_present_pages)
+ if (!pgdat->node_present_pages)
continue;

/* Don't want a node to appear more than once */

This patch resolves the kernel panic problem.

-
Kamalesh Babulal.
-
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/