[PATCH 2/2] efi: only iterate over handles that provide the device path protocol
Michael Olbrich
m.olbrich at pengutronix.de
Sat Mar 11 08:07:33 PST 2017
All other handled are skipped anyways.
Signed-off-by: Michael Olbrich <m.olbrich at pengutronix.de>
---
drivers/efi/efi-device.c | 6 ++++--
1 file changed, 4 insertions(+), 2 deletions(-)
diff --git a/drivers/efi/efi-device.c b/drivers/efi/efi-device.c
index c5fb404cd36b..db3c0afe3361 100644
--- a/drivers/efi/efi-device.c
+++ b/drivers/efi/efi-device.c
@@ -102,7 +102,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;
@@ -244,7 +245,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;
--
2.11.0
More information about the barebox
mailing list