Re: [PATCH] x86/kexec: always ensure EFI systab region is mapped

From: Kairui Song
Date: Tue Apr 23 2019 - 13:15:23 EST

On Mon, Apr 22, 2019 at 11:21 PM Junichi Nomura <j-nomura@xxxxxxxxxxxxx> wrote:
> On 4/22/19 6:28 PM, Kairui Song wrote:
> > The reason is the systab region is not mapped by the identity mapping
> > provided by kexec. Currently kexec only create identity mapping for
> > mem regions, wihch won't cover the systab. So second kernel will be
> > accessing a not mapped memory region and cause fault.
> > But as kexec tend to pad the map region up to PUD size, the
> > systab could be included in the map by accident, so it worked on
> > some machines, but that will be broken easily and unstable.
> Is the mapping of ACPI tables just by luck, too?

Good question, they should have same issue with systab, I ignored this one.
Then in first kernel when doing kexec it should ensure both ACPI
tables and the EFI systab are mapped, that should cover everything and
make it work.
Is there anything else missing?

Best Regards,
Kairui Song