efi_loader: correctly setup device paths for block devices
According to the UEFI spec the numbering of partitions has to start with 1. Partion number 0 is reserved for the optional device path for the complete block device. Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de> Signed-off-by: Alexander Graf <agraf@suse.de>
This commit is contained in:
parent
66b051d51f
commit
7b982f009b
@ -435,7 +435,7 @@ static void *dp_part_fill(void *buf, struct blk_desc *desc, int part)
|
||||
if (desc->part_type == PART_TYPE_ISO) {
|
||||
struct efi_device_path_cdrom_path *cddp = buf;
|
||||
|
||||
cddp->boot_entry = part - 1;
|
||||
cddp->boot_entry = part;
|
||||
cddp->dp.type = DEVICE_PATH_TYPE_MEDIA_DEVICE;
|
||||
cddp->dp.sub_type = DEVICE_PATH_SUB_TYPE_CDROM_PATH;
|
||||
cddp->dp.length = sizeof(*cddp);
|
||||
@ -449,7 +449,7 @@ static void *dp_part_fill(void *buf, struct blk_desc *desc, int part)
|
||||
hddp->dp.type = DEVICE_PATH_TYPE_MEDIA_DEVICE;
|
||||
hddp->dp.sub_type = DEVICE_PATH_SUB_TYPE_HARD_DRIVE_PATH;
|
||||
hddp->dp.length = sizeof(*hddp);
|
||||
hddp->partition_number = part - 1;
|
||||
hddp->partition_number = part;
|
||||
hddp->partition_start = info.start;
|
||||
hddp->partition_end = info.size;
|
||||
if (desc->part_type == PART_TYPE_EFI)
|
||||
|
Loading…
Reference in New Issue
Block a user