Add two new members to kexec_info structure:

struct memory_range *crash_range
int nr_crash_ranges;

crash_range contains the memory ranges used to boot 2nd kernel.
nr_crash_ranges contains the count of the crash memory ranges.

Signed-off-by: WANG Chao <[email protected]>
---
 kexec/arch/i386/crashdump-x86.c | 6 ++++++
 kexec/kexec.h                   | 2 ++
 2 files changed, 8 insertions(+)

diff --git a/kexec/arch/i386/crashdump-x86.c b/kexec/arch/i386/crashdump-x86.c
index 2437c30..2a6871d 100644
--- a/kexec/arch/i386/crashdump-x86.c
+++ b/kexec/arch/i386/crashdump-x86.c
@@ -997,6 +997,12 @@ int load_crashdump_segments(struct kexec_info *info, char* 
mod_cmdline,
                add_memmap(memmap_p, &nr_memmap_p, start, size, type);
                cmdline_add_memmap_acpi(mod_cmdline, start, end);
        }
+
+       /* Store 2nd kernel boot memory ranges for later reference in
+        * x86-setup-linux.c: setup_linux_system_parameters() */
+       info->crash_range = memmap_p;
+       info->nr_crash_ranges = nr_memmap_p;
+
        return 0;
 }
 
diff --git a/kexec/kexec.h b/kexec/kexec.h
index d69bba2..22d4a42 100644
--- a/kexec/kexec.h
+++ b/kexec/kexec.h
@@ -148,6 +148,8 @@ struct kexec_info {
        int nr_segments;
        struct memory_range *memory_range;
        int memory_ranges;
+       struct memory_range *crash_range;
+       int nr_crash_ranges;
        void *entry;
        struct mem_ehdr rhdr;
        unsigned long backup_start;
-- 
1.8.5.3


_______________________________________________
kexec mailing list
[email protected]
http://lists.infradead.org/mailman/listinfo/kexec

Reply via email to