Re: [RFC] efi: Add ACPI_MEMORY_NVS into the linear map

From: Ard Biesheuvel
Date: Tue Feb 20 2024 - 03:28:25 EST


On Tue, 20 Feb 2024 at 05:10, Boqun Feng <boqun.feng@xxxxxxxxx> wrote:
>
> On Sat, Feb 17, 2024 at 08:49:32AM +0100, Greg KH wrote:
> > On Thu, Feb 15, 2024 at 02:51:06PM -0800, Boqun Feng wrote:
> > > Currently ACPI_MEMORY_NVS is omitted from the linear map, which causes
> > > a trouble with the following firmware memory region setup:
> > >
> > > [..] efi: 0x0000dfd62000-0x0000dfd83fff [ACPI Reclaim|...]
> > > [..] efi: 0x0000dfd84000-0x0000dfd87fff [ACPI Mem NVS|...]
> > >
> > > , on ARM64 with 64k page size, the whole 0x0000dfd80000-0x0000dfd8ffff
> > > range will be omitted from the the linear map due to 64k round-up. And
> > > a page fault happens when trying to access the ACPI_RECLAIM_MEMORY:
> > >
> > > [...] Unable to handle kernel paging request at virtual address ffff0000dfd80000
> > >
> > > To fix this, add ACPI_MEMORY_NVS into the linear map.
> > >
> > > Signed-off-by: Boqun Feng <boqun.feng@xxxxxxxxx>
> > > Cc: stable@xxxxxxxxxxxxxxx # 5.15+
> >
> > What commit id does this fix? Can you include that as well?
> >
>
> It should be 7aff79e297ee ("Drivers: hv: Enable Hyper-V code to be built
> on ARM64"), but as Ard mentioned earlier, this could be fixed at the VM
> firmware, and Oliver is working on that. Should the situation change, I
> will send a V2 with more information and include the commit id.
>

The patch as-is is not acceptable to me, so no need to send a v2 just
to add more information.

Please consider the fix I proposed for arch_memremap_can_ram_remap()
if fixing this in the firmware is not feasible.