diff mbox series

[U-Boot,v2,5/7] efi_loader: Update efi_free_pages() to new efi_add_memory_map()

Message ID 20190714222931.12713-6-pure.logic@nexus-software.ie
State Superseded, archived
Delegated to: Heinrich Schuchardt
Headers show
Series efi_loader: Fix inconsistencies in efi_add_memory_map usage | expand

Commit Message

Bryan O'Donoghue July 14, 2019, 10:29 p.m. UTC
efi_add_memory_map() now returns efi_status_t not the passed uint64_t
address on success. We need to capture that change in efi_free_pages().

Signed-off-by: Bryan O'Donoghue <pure.logic@nexus-software.ie>
---
 lib/efi_loader/efi_memory.c | 10 ++++------
 1 file changed, 4 insertions(+), 6 deletions(-)
diff mbox series

Patch

diff --git a/lib/efi_loader/efi_memory.c b/lib/efi_loader/efi_memory.c
index 4ce3dd8f8c..57016a393b 100644
--- a/lib/efi_loader/efi_memory.c
+++ b/lib/efi_loader/efi_memory.c
@@ -501,13 +501,11 @@  efi_status_t efi_free_pages(uint64_t memory, efi_uintn_t pages)
 		return EFI_INVALID_PARAMETER;
 	}
 
-	r = efi_add_memory_map(memory, pages, EFI_CONVENTIONAL_MEMORY, false);
-	/* Merging of adjacent free regions is missing */
-
-	if (r == memory)
-		return EFI_SUCCESS;
+	ret = efi_add_memory_map(memory, pages, EFI_CONVENTIONAL_MEMORY, false);
+	if (ret != EFI_SUCCESS)
+		return EFI_NOT_FOUND;
 
-	return EFI_NOT_FOUND;
+	return ret;
 }
 
 /**