diff options
Diffstat (limited to 'lib')
-rw-r--r-- | lib/efi_loader/efi_boottime.c | 5 | ||||
-rw-r--r-- | lib/efi_loader/efi_esrt.c | 2 |
2 files changed, 4 insertions, 3 deletions
diff --git a/lib/efi_loader/efi_boottime.c b/lib/efi_loader/efi_boottime.c index e65ca6a4cbe..ba28989f36a 100644 --- a/lib/efi_loader/efi_boottime.c +++ b/lib/efi_loader/efi_boottime.c @@ -1949,6 +1949,7 @@ efi_status_t efi_load_image_from_path(bool boot_policy, efi_uintn_t buffer_size; uint64_t addr, pages; const efi_guid_t *guid; + struct efi_handler *handler; /* In case of failure nothing is returned */ *buffer = NULL; @@ -1970,11 +1971,11 @@ efi_status_t efi_load_image_from_path(bool boot_policy, } if (ret != EFI_SUCCESS) return EFI_NOT_FOUND; - ret = EFI_CALL(efi_handle_protocol(device, guid, - (void **)&load_file_protocol)); + ret = efi_search_protocol(device, guid, &handler); if (ret != EFI_SUCCESS) return EFI_NOT_FOUND; buffer_size = 0; + load_file_protocol = handler->protocol_interface; ret = EFI_CALL(load_file_protocol->load_file( load_file_protocol, rem, boot_policy, &buffer_size, NULL)); diff --git a/lib/efi_loader/efi_esrt.c b/lib/efi_loader/efi_esrt.c index dcc08a6d3a2..7f46d651e6f 100644 --- a/lib/efi_loader/efi_esrt.c +++ b/lib/efi_loader/efi_esrt.c @@ -115,7 +115,7 @@ efi_status_t efi_esrt_allocate_install(u32 num_entries) u32 size = efi_esrt_entries_to_size(num_entries); efi_guid_t esrt_guid = efi_esrt_guid; - /* Reserve num_pages for ESRT */ + /* Reserve memory for ESRT */ ret = efi_allocate_pool(EFI_BOOT_SERVICES_DATA, size, (void **)&new_esrt); |