On 04/14/14 at 11:12am, Simon Horman wrote: > On Fri, Apr 11, 2014 at 10:23:24AM +0800, WANG Chao wrote: > > Now memmap_p contains all the memory range for 2nd kernel boot. > > Could you please include a fuller explanation of what this patch > achieves and the motivation for it. In load_crashdump_segments(), memmap_p used to contain RANGE_RAM memory range for booting 2nd kernel. Now adding types of RANGE_ACPI and RANGE_ACPI_NVS to memmap_p, so later we can pass all the types of memory range to 2nd kernel. These all types of memory ranges are all stored in memmap_p. I'll add above comment to patch description. Thanks WANG Chao > > > > > Signed-off-by: WANG Chao <chaowang at redhat.com> > > --- > > kexec/arch/i386/crashdump-x86.c | 5 ++++- > > 1 file changed, 4 insertions(+), 1 deletion(-) > > > > diff --git a/kexec/arch/i386/crashdump-x86.c b/kexec/arch/i386/crashdump-x86.c > > index e695eaf..43eb8f7 100644 > > --- a/kexec/arch/i386/crashdump-x86.c > > +++ b/kexec/arch/i386/crashdump-x86.c > > @@ -1006,12 +1006,15 @@ int load_crashdump_segments(struct kexec_info *info, char* mod_cmdline, > > > > /* Inform second kernel about the presence of ACPI tables. */ > > for (i = 0; i < CRASH_MAX_MEMORY_RANGES; i++) { > > - unsigned long start, end; > > + unsigned long start, end, size, type; > > if ( !( mem_range[i].type == RANGE_ACPI > > || mem_range[i].type == RANGE_ACPI_NVS) ) > > continue; > > start = mem_range[i].start; > > end = mem_range[i].end; > > + type = mem_range[i].type; > > + size = end - start; > > + add_memmap(memmap_p, &nr_memmap_p, start, size, type); > > cmdline_add_memmap_acpi(mod_cmdline, start, end); > > } > > return 0; > > -- > > 1.8.5.3 > >