sparsemem ppc64 tidy flat memory comments and fix benign mempresent call
Joel Schopp
jschopp at austin.ibm.com
Tue May 10 09:03:51 EST 2005
> diff -upN reference/arch/ppc64/mm/init.c current/arch/ppc64/mm/init.c
> --- reference/arch/ppc64/mm/init.c
> +++ current/arch/ppc64/mm/init.c
> @@ -631,18 +631,19 @@ void __init do_init_bootmem(void)
>
> max_pfn = max_low_pfn;
>
> - /* add all physical memory to the bootmem map. Also, find the first
> - * presence of all LMBs*/
> + /* Add all physical memory to the bootmem map, mark each area
> + * present. The first block has already been marked present above.
> + */
> for (i=0; i < lmb.memory.cnt; i++) {
> unsigned long physbase, size;
>
> physbase = lmb.memory.region[i].physbase;
> size = lmb.memory.region[i].size;
> - if (i) { /* already created mappings for first LMB */
> + if (i) {
> start_pfn = physbase >> PAGE_SHIFT;
> end_pfn = start_pfn + (size >> PAGE_SHIFT);
> + memory_present(0, start_pfn, end_pfn);
> }
> - memory_present(0, start_pfn, end_pfn);
> free_bootmem(physbase, size);
> }
Instead of moving all that around why don't we just drop the duplicate
and the if altogether? I tested and sent a patch back in March that
cleaned up the non-numa case pretty well.
http://sourceforge.net/mailarchive/message.php?msg_id=11320001
More information about the Linuxppc64-dev
mailing list