2022-08-31 02:02:03

by Yun Levi

[permalink] [raw]
Subject: [PATCH v2-RESEND] arm64/kexec: Fix missing extra range for crashkres_low.

Like crashk_res, Calling crash_exclude_mem_range function with
crashk_low_res area would need extra crash_mem range too.

Add one more extra cmem slot in case of crashk_low_res is used.

Signed-off-by: Levi Yun <[email protected]>
Fixes: 944a45abfabc ("arm64: kdump: Reimplement crashkernel=X")
Cc: [email protected]
Acked-by: Baoquan He <[email protected]>
Reviewed-by: Catalin Marinas <[email protected]>
---
arch/arm64/kernel/machine_kexec_file.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/arch/arm64/kernel/machine_kexec_file.c
b/arch/arm64/kernel/machine_kexec_file.c
index 889951291cc0..a11a6e14ba89 100644
--- a/arch/arm64/kernel/machine_kexec_file.c
+++ b/arch/arm64/kernel/machine_kexec_file.c
@@ -47,7 +47,7 @@ static int prepare_elf_headers(void **addr, unsigned long *sz)
u64 i;
phys_addr_t start, end;

- nr_ranges = 1; /* for exclusion of crashkernel region */
+ nr_ranges = 2; /* for exclusion of crashkernel region */
for_each_mem_range(i, &start, &end)
nr_ranges++;

--
2.35.1


2022-08-31 10:52:55

by Catalin Marinas

[permalink] [raw]
Subject: Re: [PATCH v2-RESEND] arm64/kexec: Fix missing extra range for crashkres_low.

On Wed, Aug 31, 2022 at 10:49:30AM +0900, Yun Levi wrote:
> Like crashk_res, Calling crash_exclude_mem_range function with
> crashk_low_res area would need extra crash_mem range too.
>
> Add one more extra cmem slot in case of crashk_low_res is used.
>
> Signed-off-by: Levi Yun <[email protected]>
> Fixes: 944a45abfabc ("arm64: kdump: Reimplement crashkernel=X")
> Cc: [email protected]

To be even more precise, it should be:

Cc: <[email protected]> # 5.19.x

> Acked-by: Baoquan He <[email protected]>
> Reviewed-by: Catalin Marinas <[email protected]>
> ---
> arch/arm64/kernel/machine_kexec_file.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/arch/arm64/kernel/machine_kexec_file.c
> b/arch/arm64/kernel/machine_kexec_file.c
> index 889951291cc0..a11a6e14ba89 100644
> --- a/arch/arm64/kernel/machine_kexec_file.c
> +++ b/arch/arm64/kernel/machine_kexec_file.c
> @@ -47,7 +47,7 @@ static int prepare_elf_headers(void **addr, unsigned long *sz)
> u64 i;
> phys_addr_t start, end;
>
> - nr_ranges = 1; /* for exclusion of crashkernel region */
> + nr_ranges = 2; /* for exclusion of crashkernel region */
> for_each_mem_range(i, &start, &end)
> nr_ranges++;

Something happened to the whitespace here, so the patch can't be
applied.

--
Catalin

2022-08-31 10:56:11

by Yun Levi

[permalink] [raw]
Subject: [PATCH v3] arm64/kexec: Fix missing extra range for crashkres_low.

Like crashk_res, Calling crash_exclude_mem_range function with
crashk_low_res area would need extra crash_mem range too.

Add one more extra cmem slot in case of crashk_low_res is used.

Signed-off-by: Levi Yun <[email protected]>
Fixes: 944a45abfabc ("arm64: kdump: Reimplement crashkernel=X")
Cc: <[email protected]> # 5.19.x
Acked-by: Baoquan He <[email protected]>
Reviewed-by: Catalin Marinas <[email protected]>
---
arch/arm64/kernel/machine_kexec_file.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/arch/arm64/kernel/machine_kexec_file.c b/arch/arm64/kernel/machine_kexec_file.c
index 889951291cc0..a11a6e14ba89 100644
--- a/arch/arm64/kernel/machine_kexec_file.c
+++ b/arch/arm64/kernel/machine_kexec_file.c
@@ -47,7 +47,7 @@ static int prepare_elf_headers(void **addr, unsigned long *sz)
u64 i;
phys_addr_t start, end;

- nr_ranges = 1; /* for exclusion of crashkernel region */
+ nr_ranges = 2; /* for exclusion of crashkernel region */
for_each_mem_range(i, &start, &end)
nr_ranges++;

--
2.35.1

2022-08-31 11:21:41

by Yun Levi

[permalink] [raw]
Subject: Re: [PATCH v2-RESEND] arm64/kexec: Fix missing extra range for crashkres_low.

>
> To be even more precise, it should be:
>
> Cc: <[email protected]> # 5.19.x

Thanks! I'll fix it!


> Something happened to the whitespace here, so the patch can't be
> applied.

Sorry, I'll check and send again :). Thanks!

On Wed, Aug 31, 2022 at 7:26 PM Catalin Marinas <[email protected]> wrote:
>
> On Wed, Aug 31, 2022 at 10:49:30AM +0900, Yun Levi wrote:
> > Like crashk_res, Calling crash_exclude_mem_range function with
> > crashk_low_res area would need extra crash_mem range too.
> >
> > Add one more extra cmem slot in case of crashk_low_res is used.
> >
> > Signed-off-by: Levi Yun <[email protected]>
> > Fixes: 944a45abfabc ("arm64: kdump: Reimplement crashkernel=X")
> > Cc: [email protected]
>
> To be even more precise, it should be:
>
> Cc: <[email protected]> # 5.19.x
>
> > Acked-by: Baoquan He <[email protected]>
> > Reviewed-by: Catalin Marinas <[email protected]>
> > ---
> > arch/arm64/kernel/machine_kexec_file.c | 2 +-
> > 1 file changed, 1 insertion(+), 1 deletion(-)
> >
> > diff --git a/arch/arm64/kernel/machine_kexec_file.c
> > b/arch/arm64/kernel/machine_kexec_file.c
> > index 889951291cc0..a11a6e14ba89 100644
> > --- a/arch/arm64/kernel/machine_kexec_file.c
> > +++ b/arch/arm64/kernel/machine_kexec_file.c
> > @@ -47,7 +47,7 @@ static int prepare_elf_headers(void **addr, unsigned long *sz)
> > u64 i;
> > phys_addr_t start, end;
> >
> > - nr_ranges = 1; /* for exclusion of crashkernel region */
> > + nr_ranges = 2; /* for exclusion of crashkernel region */
> > for_each_mem_range(i, &start, &end)
> > nr_ranges++;
>
> Something happened to the whitespace here, so the patch can't be
> applied.
>
> --
> Catalin

2022-09-01 13:18:06

by Will Deacon

[permalink] [raw]
Subject: Re: [PATCH v3] arm64/kexec: Fix missing extra range for crashkres_low.

On Wed, 31 Aug 2022 19:39:13 +0900, Levi Yun wrote:
> Like crashk_res, Calling crash_exclude_mem_range function with
> crashk_low_res area would need extra crash_mem range too.
>
> Add one more extra cmem slot in case of crashk_low_res is used.
>
>

Applied to arm64 (for-next/fixes), thanks!

[1/1] arm64/kexec: Fix missing extra range for crashkres_low.
https://git.kernel.org/arm64/c/4831be702b95

Cheers,
--
Will

https://fixes.arm64.dev
https://next.arm64.dev
https://will.arm64.dev