Re: [PATCH 0/2 v4] add reserved e820 ranges to the kdump kernel e820 table

From: Dave Young
Date: Wed Oct 24 2018 - 02:58:16 EST


On 10/22/18 at 03:47pm, Lianbo Jiang wrote:
> E820 reserved ranges is useful in kdump kernel, it has been added in
> kexec-tools code.
>
> One reason is PCI mmconf (extended mode) requires reserved region otherwise
> it falls back to legacy mode.
>
> Furthermore, when AMD SME kdump support, it needs to map dmi table area as
> decrypted. For normal boot, these ranges sit in e820 reserved ranges, thus
> the early ioremap code naturally map them as decrypted. If it also has same
> e820 reserve setup in kdump kernel then it will just work like normal
> kernel.
>
> Kdump uses walk_iomem_res_desc to iterate resources, then adds matched desc
> to e820 table for the kdump kernel.
>
> But IORES_DESC_NONE resource type includes several different e820 types, we
> need add exact e820 type to the kdump kernel e820 table, thus it also needs
> an extra checking in memmap_entry_callback() to match the e820 type and
> resource name.
>
> Changes since v1:
> 1. Modified the value of flags to "0", when walking through the whole
> tree for e820 reserved ranges.
>
> Changes since v2:
> 1. Modified the value of flags to "0", when walking through the whole
> tree for e820 reserved ranges.
> 2. Modified the invalid SOB chain issue.
>
> Changes since v3:
> 1. Dropped [PATCH 1/3 v3] resource: fix an error which walks through iomem
> resources. Please refer to this commit <010a93bf97c7> "resource: Fix
> find_next_iomem_res() iteration issue"
>
> Note:
> 1. The patches are made based on this branch:
> git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git
>
> 2. And you need to apply the follow patch before test kdump file_load,
> otherwise these patches won't work.
> commit <010a93bf97c7> "resource: Fix find_next_iomem_res() iteration
> issue"
>
> Lianbo Jiang (2):
> x86/kexec_file: add e820 entry in case e820 type string matches to io
> resource name
> x86/kexec_file: add reserved e820 ranges to kdump kernel e820 table
>
> arch/x86/include/asm/e820/api.h | 2 ++
> arch/x86/kernel/crash.c | 10 +++++++++-
> arch/x86/kernel/e820.c | 2 +-
> kernel/resource.c | 1 +
> 4 files changed, 13 insertions(+), 2 deletions(-)
>
> --
> 2.17.1
>

Lianbo, thank you for the update, added Andrew in cc.

Acked-by: Dave Young <dyoung@xxxxxxxxxx>

Thanks
Dave