Revert "kernel/efi: Drop device_set_path_end. Fixes booting Haiku with EFI under qemu"

This reverts commit 51429f04179453622530b5fc1a2bb62f8c4deb75.
This commit is contained in:
Augustin Cavalier 2020-05-08 23:50:02 -04:00
parent 088faf4fb9
commit 20c7d4694b

View File

@ -43,6 +43,16 @@ static efi_guid LoadedImageGUID = EFI_LOADED_IMAGE_PROTOCOL_GUID;
static efi_guid DevicePathGUID = EFI_DEVICE_PATH_PROTOCOL_GUID;
static void
device_set_path_end(efi_device_path_protocol* path)
{
path->Type = DEVICE_PATH_END;
path->SubType = DEVICE_PATH_ENTIRE_END;
path->Length[0] = sizeof(efi_device_path_protocol);
path->Length[1] = 0;
}
static bool
device_path_end(efi_device_path_protocol* path)
{
@ -314,6 +324,8 @@ add_boot_device_for_image(NodeList *devicesList)
return B_ERROR;
}
device_set_path_end(NextDevicePathNode(node));
size_t length = device_path_length(devicePath);
efi_device_path_protocol *savedDevicePath
= (efi_device_path_protocol*)malloc(length);