We read the address map before assigning the memory for the pages that will
be mapped to virtual addresses. So these pages will overlap with the entry
for EFI_CONVENTIONAL_MEMORY. We have to ensure that every page is described
at most once in the map.

Remove EFI_CONVENTIONAL_MEMORY from the map that we pass to
SetVirtualAddressMap().

Signed-off-by: Heinrich Schuchardt <[email protected]>
---
v2
        no change
---
 lib/efi_selftest/efi_selftest_set_virtual_address_map.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/lib/efi_selftest/efi_selftest_set_virtual_address_map.c 
b/lib/efi_selftest/efi_selftest_set_virtual_address_map.c
index 6ee7bbeb01..3ffb61b7e8 100644
--- a/lib/efi_selftest/efi_selftest_set_virtual_address_map.c
+++ b/lib/efi_selftest/efi_selftest_set_virtual_address_map.c
@@ -123,6 +123,7 @@ static int setup(const efi_handle_t handle,
                case EFI_LOADER_DATA:
                case EFI_BOOT_SERVICES_CODE:
                case EFI_BOOT_SERVICES_DATA:
+               case EFI_CONVENTIONAL_MEMORY:
                        continue;
                }
                memcpy(pos1, pos2, desc_size);
--
2.20.1

_______________________________________________
U-Boot mailing list
[email protected]
https://lists.denx.de/listinfo/u-boot

Reply via email to