[PATCH] [POWERPC] Fix handling of memreserve if the range lands in highmem

Kumar Gala galak at kernel.crashing.org
Thu Jan 10 06:41:09 EST 2008


On Jan 9, 2008, at 1:30 PM, Scott Wood wrote:

> Kumar Gala wrote:
>> On Jan 9, 2008, at 12:53 PM, Scott Wood wrote:
>>> It looks like if the reserved area straddles the highmem boundary,  
>>> it'll
>>> only reserve the highmem portion.
>> Yeah, I thought about that.  I'm wondering if we should warn about  
>> this.. its seems like a bad thing to do.
>
> How is the firmware supposed to know where Linux sets its lowmem  
> limit?  I think this is something that needs to be handled.

Yeah I agree with that as well.

I'm thinking I'll add something like:

                 if (addr < total_lowmem)
                         reserve_bootmem(lmb.reserved.region[i].base,
                                         lmb_size_bytes(&lmb.reserved,  
i));
+               else if (lmb.reserved.region[i].base > total_lowmem) {
+                       unsigned long adjusted_size;
+//                     adjusted_size = xxx;

need to figure out the math here.

+                       reserve_bootmem(lmb.reserved.region[i].base,
+                                       adjusted_size);
+               }

that should solve the problem.

- k



More information about the Linuxppc-dev mailing list