From: Heinrich Schuchardt <xypron.glpk@gmx.de>
Date: Sun, 8 Oct 2017 04:57:26 +0000 (+0200)
Subject: efi_loader: avoid NULL dereference in efi_dp_match
X-Git-Tag: v2025.01-rc5-pxa1908~5558^2~9
X-Git-Url: http://git.dujemihanovic.xyz/img/html/static/git-favicon.png?a=commitdiff_plain;h=1a2c8d2f609237664fcda944c251ce693e4366f5;p=u-boot.git

efi_loader: avoid NULL dereference in efi_dp_match

When calling bootefi hello twice a kernel dump occurs.

Neither bootefi hello nor bootefi selftest have an image
device patch. So do not try to dereference the NULL
value.

Fixes: 95c5553ea26 efi_loader: refactor boot device and loaded_image handling
Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
Reviewed-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Alexander Graf <agraf@suse.de>
---

diff --git a/lib/efi_loader/efi_boottime.c b/lib/efi_loader/efi_boottime.c
index 976d5822f7..54cf16476c 100644
--- a/lib/efi_loader/efi_boottime.c
+++ b/lib/efi_loader/efi_boottime.c
@@ -1154,7 +1154,8 @@ void efi_setup_loaded_image(struct efi_loaded_image *info, struct efi_object *ob
 		(void *)&efi_device_path_to_text;
 
 	info->file_path = file_path;
-	info->device_handle = efi_dp_find_obj(device_path, NULL);
+	if (device_path)
+		info->device_handle = efi_dp_find_obj(device_path, NULL);
 
 	list_add_tail(&obj->link, &efi_obj_list);
 }