Page MenuHomeFreeBSD

D57803.id180736.diff
No OneTemporary

D57803.id180736.diff

diff --git a/stand/efi/loader/main.c b/stand/efi/loader/main.c
--- a/stand/efi/loader/main.c
+++ b/stand/efi/loader/main.c
@@ -629,10 +629,20 @@
efi_devpath_free(devpath);
if (dp == NULL)
break;
- printf(" Setting currdev to UEFI path %s\n",
- rootdev);
- set_currdev_pdinfo(dp);
- return (0);
+ printf(" Trying uefi_rootdev %s\n", rootdev);
+ /* if just a partition, just try that */
+ h = NULL;
+ if (dp->pd_parent != NULL) {
+ if (try_as_currdev(dp, false))
+ return (0);
+ /* That failed? Try the whole disk, but skip this part */
+ h = dp->pd_handle;
+ dp = dp->pd_parent;
+ }
+ /* otherwise, it's a full disk, so try all its partitions */
+ if (try_disk_and_partitions(dp, h) == 0)
+ return (0);
+ break;
} while (0);
/*

File Metadata

Mime Type
text/plain
Expires
Sat, Aug 8, 1:25 PM (16 h, 46 s)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
34304395
Default Alt Text
D57803.id180736.diff (779 B)

Event Timeline