diff options
author | Ben Romer <benjamin.romer@unisys.com> | 2011-04-27 08:56:09 -0400 |
---|---|---|
committer | Simon Horman <horms@verge.net.au> | 2011-04-28 08:06:35 +0900 |
commit | 6c7412c9220aeaa43b998fa1a07574386e77157a (patch) | |
tree | 44fbf9686ba100015bfcc4de1121eab19edae12a /kexec/arch/mips/crashdump-mips.c | |
parent | 806ef8870539a6c74a2a98188d0207a038b16f77 (diff) |
use /proc/iomem for map with "add_efi_memmap" kernel option
This patch changes the behavior of the kexec loader when the
"add_efi_memmap" option is present on the currently running kernel's
command line, to read the kernel memory map from /proc/iomem instead
of /sys/firmware/memmap.
On EFI systems, sometimes the e820 table is missing or incomplete.
Systems like these use the "add_efi_memmap" option to add EFI's memory
table entries to the kernel's memory table to build a complete picture
of the system's memory; however, using the option does not add these
entries to the table used to populate /sys/firmware/memmap, which is
meant to be a pristine original copy.
The kexec loader uses the pristine memory map by default, which causes
problems when the loader doesn't have a complete picture of the system
and incorrectly loads the kernel or ramdisk in places that aren't
actually usable. This change makes the kexec loader check the running
kernel's command line for the "add_efi_memmap" option and if it finds
it, will use the modified map instead of the original map.
signed-off-by: Benjamin Romer <benjamin.romer@unisys.com>
Signed-off-by: Simon Horman <horms@verge.net.au>
Diffstat (limited to 'kexec/arch/mips/crashdump-mips.c')
0 files changed, 0 insertions, 0 deletions