Re: [Patch v4] Do not reserve crashkernel high memory if crashkernel low memory reserving failed

From: Baoquan He
Date: Tue Sep 22 2015 - 20:03:06 EST


On 09/22/15 at 12:54pm, Andrew Morton wrote:
> > --- a/arch/x86/kernel/setup.c
> > +++ b/arch/x86/kernel/setup.c
> > @@ -493,7 +493,7 @@ static void __init memblock_x86_reserve_range_setup_data(void)
> > # define CRASH_KERNEL_ADDR_HIGH_MAX MAXMEM
> > #endif
> >
> > -static void __init reserve_crashkernel_low(void)
> > +static int __init reserve_crashkernel_low(void)
> > {
> > #ifdef CONFIG_X86_64
> > const unsigned long long alignment = 16<<20; /* 16M */
> > @@ -522,17 +522,15 @@ static void __init reserve_crashkernel_low(void)
> > } else {
> > /* passed with crashkernel=0,low ? */
> > if (!low_size)
> > - return;
> > + return 0;
>
> What's happening here? It's returning "success" when
> parse_crashkernel_low() fails?

It's the case user specify "crashkernel=0,low" to disable
crashkernel low memory allocation explicitly. So here we parse the
cmdline and get it's in this case, reture 0 directly.

>
> > }
> >
> > low_base = memblock_find_in_range(low_size, (1ULL<<32),
> > low_size, alignment);
> >
> > if (!low_base) {
> > - if (!auto_set)
> > - pr_info("crashkernel low reservation failed - No suitable area found.\n");
> > -
> > - return;
> > + pr_info("crashkernel low reservation failed - No suitable area found.\n");
>
> That's not a terribly useful message. If kdump is now unavailable and
> the operator needs to take some remedial action then we should inform
> them of this.
>
> Also, such a message should have higher severity than KERN_INFO?

Yes, how about KERN_ERR? It's an unexpected result from kdump side
though it doesn't harm the normal kernel.


>
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/