Re: [PATCH 2/2] x86/kexec_file: add reserved e820 ranges to 2nd kernel e820 table
From: Dave Young
Date: Tue Sep 18 2018 - 07:15:27 EST
On 09/18/18 at 06:20pm, lijiang wrote:
> å 2018å09æ18æ 11:20, Dave Young åé:
> > On 09/18/18 at 10:48am, Lianbo Jiang wrote:
> >> e820 reserved ranges is useful in kdump kernel, we have added this in
> >> kexec-tools code.
> >>
> >> One reason is PCI mmconf (extended mode) requires reserved region
> >> otherwise it falls back to legacy mode.
> >>
> >> When AMD SME kdump support, it needs to map dmi table area as unencrypted.
> >> For normal boot these ranges sit in e820 reserved ranges thus the early
> >> ioremap code naturally map them as unencrypted. So if we have same e820
> >> reserve setup in kdump kernel then it will just work like normal kernel.
> >>
> >> Signed-off-by: Dave Young <dyoung@xxxxxxxxxx>
> >> Signed-off-by: Lianbo Jiang <lijiang@xxxxxxxxxx>
> >> ---
> >> arch/x86/kernel/crash.c | 6 ++++++
> >> 1 file changed, 6 insertions(+)
> >>
> >> diff --git a/arch/x86/kernel/crash.c b/arch/x86/kernel/crash.c
> >> index 3c113e6545a3..db453e9c117b 100644
> >> --- a/arch/x86/kernel/crash.c
> >> +++ b/arch/x86/kernel/crash.c
> >> @@ -384,6 +384,12 @@ int crash_setup_memmap_entries(struct kimage *image, struct boot_params *params)
> >> walk_iomem_res_desc(IORES_DESC_ACPI_NV_STORAGE, flags, 0, -1, &cmd,
> >> memmap_entry_callback);
> >>
> >> + /* Add all reserved ranges */
> >> + cmd.type = E820_TYPE_RESERVED;
> >> + flags = IORESOURCE_MEM;
> >
> > Lianbo, rethink about this, we will miss other io resource types if only
> > match IORESOURCE_MEM here, can you redo the patch with just using "0"
> > for the passing flags?
> >
>
> This patches align on kexec-tools for e820 reserved ranges, if so, the kexec-tools also need to
> be improved for the other type, such as IORESOURCE_IO/BUS/DMA(...), right?
Kexec-tools just go through /proc/iomem "reserved" items and add them
these flags are not visible to it. So we have done same in kexec-tools.
>
> I will improve these patches and post v2 tomorrow.
Thanks!
Dave