[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20200908012138.GA3058@dhcp-128-65.nay.redhat.com>
Date: Tue, 8 Sep 2020 09:21:38 +0800
From: Dave Young <dyoung@...hat.com>
To: Chen Zhou <chenzhou10@...wei.com>
Cc: catalin.marinas@....com, will@...nel.org, james.morse@....com,
tglx@...utronix.de, mingo@...hat.com, bhe@...hat.com,
corbet@....net, John.P.donnelly@...cle.com,
prabhakar.pkin@...il.com, bhsharma@...hat.com, horms@...ge.net.au,
robh+dt@...nel.org, arnd@...db.de, nsaenzjulienne@...e.de,
linux-arm-kernel@...ts.infradead.org, linux-kernel@...r.kernel.org,
kexec@...ts.infradead.org, linux-doc@...r.kernel.org,
guohanjun@...wei.com, xiexiuqi@...wei.com, huawei.libin@...wei.com,
wangkefeng.wang@...wei.com
Subject: Re: [PATCH v12 1/9] x86: kdump: move CRASH_ALIGN to 2M
Hi,
On 09/07/20 at 09:47pm, Chen Zhou wrote:
> CONFIG_PHYSICAL_ALIGN can be selected from 2M to 16M and default
> value is 2M, so move CRASH_ALIGN to 2M, with smaller value reservation
> can have more chance to succeed.
Seems still some misunderstanding about the change :( I'm sorry if I
did not explain it clearly.
Previously I missed the PHYSICAL_ALIGN can change according to .config
I mean we should change the value to CONFIG_PHYSICAL_ALIGN for X86
And I suggest to move back to keep using 16M. And do not change it in
this series.
> And replace the hard-coded alignment with macro CRASH_ALIGN in function
> reserve_crashkernel().
>
> Suggested-by: Dave Young <dyoung@...hat.com>
> Signed-off-by: Chen Zhou <chenzhou10@...wei.com>
> ---
> arch/x86/include/asm/kexec.h | 3 +++
> arch/x86/kernel/setup.c | 5 +----
> 2 files changed, 4 insertions(+), 4 deletions(-)
>
> diff --git a/arch/x86/include/asm/kexec.h b/arch/x86/include/asm/kexec.h
> index 6802c59e8252..83f200dd54a1 100644
> --- a/arch/x86/include/asm/kexec.h
> +++ b/arch/x86/include/asm/kexec.h
> @@ -18,6 +18,9 @@
>
> # define KEXEC_CONTROL_CODE_MAX_SIZE 2048
>
> +/* 2M alignment for crash kernel regions */
> +#define CRASH_ALIGN SZ_2M
> +
> #ifndef __ASSEMBLY__
>
> #include <linux/string.h>
> diff --git a/arch/x86/kernel/setup.c b/arch/x86/kernel/setup.c
> index 3511736fbc74..296294ad0dd8 100644
> --- a/arch/x86/kernel/setup.c
> +++ b/arch/x86/kernel/setup.c
> @@ -402,9 +402,6 @@ static void __init memblock_x86_reserve_range_setup_data(void)
>
> #ifdef CONFIG_KEXEC_CORE
>
> -/* 16M alignment for crash kernel regions */
> -#define CRASH_ALIGN SZ_16M
> -
> /*
> * Keep the crash kernel below this limit.
> *
> @@ -530,7 +527,7 @@ static void __init reserve_crashkernel(void)
>
> start = memblock_find_in_range(crash_base,
> crash_base + crash_size,
> - crash_size, 1 << 20);
> + crash_size, CRASH_ALIGN);
> if (start != crash_base) {
> pr_info("crashkernel reservation failed - memory is in use.\n");
> return;
> --
> 2.20.1
>
Thanks
Dave
Powered by blists - more mailing lists