Subject: Re: 2.6.24-mm1: ppc32: too few arguments to function 'reserve_bootmem'

From: Andrew Morton <[email-masked]>
Date: Mon, 4 Feb 2008 14:40:36 -0800

On Mon, 4 Feb 2008 21:29:02 +0100
Mariusz Kozlowski <[email-masked]> wrote:

> Hello,
> 
> 	This is from ppc32:
> 
>   CC      arch/powerpc/mm/mem.o
> arch/powerpc/mm/mem.c: In function 'do_init_bootmem':
> arch/powerpc/mm/mem.c:256: error: too few arguments to function 'reserve_bootmem'
> arch/powerpc/mm/mem.c:261: error: too few arguments to function 'reserve_bootmem'
> 
> Leftover from introduce-flags-for-reserve_bootmem.patch?
> 

Yes, I've had to fix that patch many times.

--- a/arch/powerpc/mm/mem.c~introduce-flags-for-reserve_bootmem-powerpc-fix
+++ a/arch/powerpc/mm/mem.c
@@ -253,12 +253,13 @@ void __init do_init_bootmem(void)
 				     lmb_size_bytes(&lmb.reserved, i) - 1;
 		if (addr < total_lowmem)
 			reserve_bootmem(lmb.reserved.region[i].base,
-					lmb_size_bytes(&lmb.reserved, i));
+					lmb_size_bytes(&lmb.reserved, i),
+					BOOTMEM_DEFAULT);
 		else if (lmb.reserved.region[i].base < total_lowmem) {
 			unsigned long adjusted_size = total_lowmem -
 				      lmb.reserved.region[i].base;
 			reserve_bootmem(lmb.reserved.region[i].base,
-					adjusted_size);
+					adjusted_size, BOOTMEM_DWEFAULT);
 		}
 	}
 #else
_

We did this wrong.  We should have introduced a new reserve_bootmem_foo()
and migrated over to that in stages.  Once all callers are migrated, remove
the old interface.