Re: [PATCH] efi/libstub: arm64: avoid SetVirtualAddressMap() when possible

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



> On 19.10.22 05:24, Yicong Yang wrote:
> >
> > After entering 6.1-rc1 the efi runtime services is not working on my platform:
> >
> > [    0.054039] Remapping and enabling EFI services.
> > [    0.054043] UEFI virtual mapping missing or invalid -- runtime services will not be available
> >
> > Not sure this patch is the root cause since I see some refactor of efi codes in 6.1-rc1,
> > but simply reverting this make EFI runtime services works again. Tested on HiSilicon's
> > Kunpeng 920 arm64 server using 48 bit VA address:
> >
> > CONFIG_ARM64_VA_BITS_48=y
> > CONFIG_ARM64_VA_BITS=48
> >
> > Thanks.

Hi,

Can you try the change below please?

+++ b/drivers/firmware/efi/arm-runtime.c
@@ -63,7 +63,7 @@ static bool __init efi_virtmap_init(void)

                if (!(md->attribute & EFI_MEMORY_RUNTIME))
                        continue;
-               if (md->virt_addr == 0)
+               if (md->virt_addr == 0 && md->phys_addr != 0)
                        return false;

                ret = efi_create_mapping(&efi_mm, md);



[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Security]     [Bugtraq]     [Linux OMAP]     [Linux MIPS]     [ECOS]     [Asterisk Internet PBX]     [Linux API]

  Powered by Linux