[PATCHv2 4/5] efi_mem_sort: skip unnecessary compare

rs
2026-04-02T20:51:46Z

I don't want to think about the possibility of this pointer containing a
reference to something from a previous iteration. At best it results in
a some arithmetic and a comparison that should usually be unnecessary.

Signed-off-by: Randolph Sapp <rs@ti.com>
---
lib/efi_loader/efi_memory.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/lib/efi_loader/efi_memory.c b/lib/efi_loader/efi_memory.c
index b77c2f980cc..882366a9f8a 100644
--- a/lib/efi_loader/efi_memory.c
+++ b/lib/efi_loader/efi_memory.c
@@ -129,13 +129,13 @@ static uint64_t desc_get_end(struct efi_mem_desc *desc)
static void efi_mem_sort(void)
{
struct efi_mem_list *lmem;
- struct efi_mem_list *prevmem = NULL;
bool merge_again = true;

list_sort(NULL, &efi_mem, efi_mem_cmp);

/* Now merge entries that can be merged */
while (merge_again) {
+ struct efi_mem_list *prevmem = NULL;
merge_again = false;
list_for_each_entry(lmem, &efi_mem, link) {
struct efi_mem_desc *prev;
--
2.53.0