loader.efi: efipart_inithandles() failure should not prevent devsw initialization

The efipart_inithandles() can return error code when there are no block devices,
however, we still should walk and initialize devsw.
This commit is contained in:
Toomas Soome 2018-08-02 12:43:40 +00:00
parent 7a9e13ddb2
commit bcc7f4c221
Notes: svn2git 2020-12-20 02:59:44 +00:00
svn path=/head/; revision=337131

View File

@ -861,12 +861,15 @@ main(int argc, CHAR16 *argv[])
* Scan the BLOCK IO MEDIA handles then
* march through the device switch probing for things.
*/
if ((i = efipart_inithandles()) == 0) {
for (i = 0; devsw[i] != NULL; i++)
if (devsw[i]->dv_init != NULL)
(devsw[i]->dv_init)();
} else
printf("efipart_inithandles failed %d, expect failures", i);
i = efipart_inithandles();
if (i != 0) {
printf("efipart_inithandles failed with ERRNO %d, expect "
"failures", i);
}
for (i = 0; devsw[i] != NULL; i++)
if (devsw[i]->dv_init != NULL)
(devsw[i]->dv_init)();
printf("%s\n", bootprog_info);
printf(" Command line arguments:");