From: Michael Ellerman Date: Tue, 6 Sep 2005 11:00:02 +0000 (+1000) Subject: [PATCH] ppc64: Fix oops for !CONFIG_NUMA X-Git-Url: https://git.karo-electronics.de/?a=commitdiff_plain;h=34b5233f379847097a1925a02b62f129c407c1e4;p=linux-beck.git [PATCH] ppc64: Fix oops for !CONFIG_NUMA The SPARSEMEM EXTREME code (802f192e4a600f7ef84ca25c8b818c8830acef5a) that went in yesterday broke PPC64 for !CONFIG_NUMA. The problem is that (free|reserve)_bootmem don't take a page number as their first argument, they take an address. Ruh roh. Booted on P5 LPAR, iSeries and G5. Signed-off-by: Michael Ellerman Signed-off-by: Paul Mackerras --- diff --git a/arch/ppc64/mm/init.c b/arch/ppc64/mm/init.c index a14ab87df491..c2157c9c3acb 100644 --- a/arch/ppc64/mm/init.c +++ b/arch/ppc64/mm/init.c @@ -554,12 +554,12 @@ void __init do_init_bootmem(void) * present. */ for (i=0; i < lmb.memory.cnt; i++) - free_bootmem(lmb_start_pfn(&lmb.memory, i), + free_bootmem(lmb.memory.region[i].base, lmb_size_bytes(&lmb.memory, i)); /* reserve the sections we're already using */ for (i=0; i < lmb.reserved.cnt; i++) - reserve_bootmem(lmb_start_pfn(&lmb.reserved, i), + reserve_bootmem(lmb.reserved.region[i].base, lmb_size_bytes(&lmb.reserved, i)); for (i=0; i < lmb.memory.cnt; i++)