From 1f1fcf24cf5fcaf269607b69bd37f8bdfa937487 Mon Sep 17 00:00:00 2001 From: Michael Olbrich Date: Sat, 11 Mar 2017 17:07:33 +0100 Subject: efi: only iterate over handles that provide the device path protocol All other handled are skipped anyways. Signed-off-by: Michael Olbrich Signed-off-by: Sascha Hauer --- drivers/efi/efi-device.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) (limited to 'drivers') diff --git a/drivers/efi/efi-device.c b/drivers/efi/efi-device.c index 7ab62a763a..e9b03cb02a 100644 --- a/drivers/efi/efi-device.c +++ b/drivers/efi/efi-device.c @@ -101,7 +101,8 @@ static efi_handle_t *efi_find_parent(efi_handle_t *handle) struct efi_open_protocol_information_entry *entry_buffer; unsigned long entry_count; - ret = efi_locate_handle(all_handles, NULL, NULL, &handle_count, &handles); + ret = efi_locate_handle(by_protocol, &efi_device_path_protocol_guid, + NULL, &handle_count, &handles); if (ret) return NULL; @@ -243,7 +244,8 @@ void efi_register_devices(void) struct efi_device **efidevs; int registered; - ret = efi_locate_handle(all_handles, NULL, NULL, &handle_count, &handles); + ret = efi_locate_handle(by_protocol, &efi_device_path_protocol_guid, + NULL, &handle_count, &handles); if (ret) return; -- cgit v1.2.3