• Yanmin Zhang's avatar
    [IA64] Fix boot problems when using "mem=" boot parameter. · 04362c4c
    Yanmin Zhang authored
    My tiger-4 machine has 16GB memory. Kernel 2.6.8 fails to boot on it
    when command line parameter mem=8G, and it also fails when mem being
    set to other value, such as 7G, 10G.
    
    Basically, in function efi_memmap_walk, md->num_pages might be decreased
    if mem_limit is set, and then at the next time when efi_memmap_walk is
    called, trim_top might trim the md again because of IA64_GRANULE_SIZE
    alignment, then another md which is beyond mem_limit at the beginning
    will be chosen, and its physical page number is larger than max_pfn. Then,
    a BUG check is triggered.
    Signed-off-by: default avatarZhang Yanmin <yanmin.zhang@intel.com>
    Signed-off-by: default avatarYao Jun      <junx.yao@intel.com>
    Signed-off-by: default avatarTony Luck    <tony.luck@intel.com>
    04362c4c
efi.c 24 KB