On Wed, Jan 09, 2008 at 11:28:30AM -0600, Kumar Gala wrote:
>       /* reserve the sections we're already using */
> -     for (i = 0; i < lmb.reserved.cnt; i++)
> -             reserve_bootmem(lmb.reserved.region[i].base,
> -                             lmb_size_bytes(&lmb.reserved, i));
> +     for (i = 0; i < lmb.reserved.cnt; i++) {
> +             unsigned long addr = lmb.reserved.region[i].base +
> +                                  lmb_size_bytes(&lmb.reserved, i) - 1;
> +             if (addr < total_lowmem)
> +                     reserve_bootmem(lmb.reserved.region[i].base,
> +                                     lmb_size_bytes(&lmb.reserved, i));
> +     }

It looks like if the reserved area straddles the highmem boundary, it'll
only reserve the highmem portion.

-Scott
_______________________________________________
Linuxppc-dev mailing list
Linuxppc-dev@ozlabs.org
https://ozlabs.org/mailman/listinfo/linuxppc-dev

Reply via email to