In recent arm64 kernels, /proc/iomem has an extended file format like: 40000000-5871ffff : System RAM 41800000-426affff : Kernel code 426b0000-42aaffff : reserved 42ab0000-42c64fff : Kernel data 54400000-583fffff : Crash kernel 58590000-585effff : reserved 58700000-5871ffff : reserved 58720000-58b5ffff : reserved 58b60000-5be3ffff : System RAM 58b61000-58b61fff : reserved where "reserved" entries can be an ACPI table, UEFI related code or data. They can be corrupted and result in early failure in booting a new kernel. As an actual example, LPI pending table and LPI property table, which are pointed by a UEFI data, are sometimes destroyed. They are expected to be preserved across kexec'ing. Changelog: v3: - Re-based to the latest commit (bd07796). - Added Tested-by tag from Bhupesh and Masayoshi - Added an error handling in case mem_regions_alloc_and_exclude() fails (0002 patch). AKASHI Takahiro (3): kexec: add variant helper functions for handling memory regions arm64: kexec: allocate memory space avoiding reserved regions arm64: kdump: deal with a lot of resource entries in /proc/iomem kexec/arch/arm64/crashdump-arm64.c | 25 ++--- kexec/arch/arm64/kexec-arm64.c | 153 ++++++++++++++++++----------- kexec/mem_regions.c | 42 ++++++++ kexec/mem_regions.h | 7 ++ 4 files changed, 153 insertions(+), 74 deletions(-) -- 2.18.1 _______________________________________________ kexec mailing list kexec@xxxxxxxxxxxxxxxxxxx http://lists.infradead.org/mailman/listinfo/kexec