[U-Boot] [PATCH 1/1] efi_loader: do not call efi_runtime_detach twice

Heinrich Schuchardt xypron.glpk at gmx.de
Wed Aug 14 05:13:49 UTC 2019


Commit 7f95104d91cc ("efi_loader: detach runtime in ExitBootServices()")
added a call to efi_runtime_detach() to ExitBootServices() but did not
remove the call in SetVirtualAddressMap().

Remove the superfluous function call.

Correct a comment referring to efi_runtime_detach().

Fixes: 7f95104d91cc ("efi_loader: detach runtime in ExitBootServices()")
Signed-off-by: Heinrich Schuchardt <xypron.glpk at gmx.de>
---
 lib/efi_loader/efi_runtime.c | 13 ++++---------
 1 file changed, 4 insertions(+), 9 deletions(-)

diff --git a/lib/efi_loader/efi_runtime.c b/lib/efi_loader/efi_runtime.c
index 54e5a98bfc..ced00516f7 100644
--- a/lib/efi_loader/efi_runtime.c
+++ b/lib/efi_loader/efi_runtime.c
@@ -565,7 +565,10 @@ void efi_runtime_relocate(ulong offset, struct efi_mem_desc *map)

 		p = (void*)((ulong)rel->offset - base) + gd->relocaddr;

-		/* The runtime services are updated in efi_runtime_detach() */
+		/*
+		 * The runtime services table is updated in
+		 * efi_relocate_runtime_table()
+		 */
 		if (map && efi_is_runtime_service_pointer(p))
 			continue;

@@ -724,14 +727,6 @@ static efi_status_t EFIAPI efi_set_virtual_address_map(
 		}
 	}

-	/*
-	 * Some runtime services are implemented in a way that we can only offer
-	 * them at boottime. Replace those function pointers.
-	 *
-	 * TODO: move this call to ExitBootServices().
-	 */
-	efi_runtime_detach();
-
 	/* Relocate the runtime. See TODO above */
 	for (i = 0; i < n; i++) {
 		struct efi_mem_desc *map;
--
2.20.1



More information about the U-Boot mailing list