• Kumar Gala's avatar
    [POWERPC] Fix handling of memreserve if the range lands in highmem · f98eeb4e
    Kumar Gala authored
    There were several issues if a memreserve range existed and happened
    to be in highmem:
    
    * The bootmem allocator is only aware of lowmem so calling
      reserve_bootmem with a highmem address would cause a BUG_ON
    * All highmem pages were provided to the buddy allocator
    
    Added a lmb_is_reserved() api that we now use to determine if a highem
    page should continue to be PageReserved or provided to the buddy
    allocator.
    
    Also, we incorrectly reported the amount of pages reserved since all
    highmem pages are initally marked reserved and we clear the
    PageReserved flag as we "free" up the highmem pages.
    Signed-off-by: default avatarKumar Gala <galak@kernel.crashing.org>
    f98eeb4e
mem.c 13.9 KB