[PATCH RESEND v5 03/10] x86, cleanup: add other types of memory range for 2nd kernel boot to memmap_p

WANG Chao chaowang at redhat.com
Sun Apr 13 22:24:18 PDT 2014


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
> > 



More information about the kexec mailing list