Re: [PATCH] kdump: fix an error that can not parse the e820 reserved region

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Lianbo,

On 09/05/18 at 09:41pm, Lianbo Jiang wrote:
> When kexec-tools load the kernel and initramfs for kdump, kexec-tools will
> read /proc/iomem and recreate the e820 ranges for kdump kernel. But it fails
> to parse the e820 reserved region, because the memcmp() is case sensitive
> when comparing the string. In fact, it may be "Reserved" or "reserved" in
> the /proc/iomem, so we use the strncasecmp() instead of the memcmp() to fix
> it.
> 
> Signed-off-by: Lianbo Jiang <lijiang@xxxxxxxxxx>
> ---
>  kexec/arch/i386/crashdump-x86.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/kexec/arch/i386/crashdump-x86.c b/kexec/arch/i386/crashdump-x86.c
> index 437e8a8..6669c1a 100644
> --- a/kexec/arch/i386/crashdump-x86.c
> +++ b/kexec/arch/i386/crashdump-x86.c
> @@ -287,7 +287,7 @@ static int get_crash_memory_ranges(struct memory_range **range, int *ranges,
>  			type = RANGE_PRAM;
>  		} else if(memcmp(str,"Persistent Memory\n",18) == 0 ) {
>  			type = RANGE_PMEM;
> -		} else if(memcmp(str,"reserved\n",9) == 0 ) {
> +		} else if(strncasecmp(str,"reserved\n",9) == 0 ) {
>  			type = RANGE_RESERVED;

It would be better to use two memcmp in two "else if" for "reserved" and "Reserved"

BTW, add one whitespace before the function arguments. 

>  		} else if (memcmp(str, "GART\n", 5) == 0) {
>  			gart_start = start;
> -- 
> 2.17.1
> 
> 
> _______________________________________________
> kexec mailing list
> kexec@xxxxxxxxxxxxxxxxxxx
> http://lists.infradead.org/mailman/listinfo/kexec

Thanks
Dave

_______________________________________________
kexec mailing list
kexec@xxxxxxxxxxxxxxxxxxx
http://lists.infradead.org/mailman/listinfo/kexec



[Index of Archives]     [LM Sensors]     [Linux Sound]     [ALSA Users]     [ALSA Devel]     [Linux Audio Users]     [Linux Media]     [Kernel]     [Gimp]     [Yosemite News]     [Linux Media]

  Powered by Linux