提交 4003e24f 编写于 作者: H Hannes Reinecke 提交者: Paolo Bonzini

megasas: Correct target/lun mapping

The structure to reference a logical drive has an unused field,
which can be used to carry the lun ID. This enabled seabios to
establish the proper target/LUN mapping.

Cc: Paolo Bonzini <pbonzini@redhat.com>
Cc: Gerd Hoffmann <kraxel@redhat.com>
Signed-off-by: NHannes Reinecke <hare@suse.de>
Signed-off-by: NPaolo Bonzini <pbonzini@redhat.com>
上级 accfeb2d
...@@ -1079,6 +1079,7 @@ static int megasas_dcmd_ld_get_list(MegasasState *s, MegasasCmd *cmd) ...@@ -1079,6 +1079,7 @@ static int megasas_dcmd_ld_get_list(MegasasState *s, MegasasCmd *cmd)
/* Logical device size is in blocks */ /* Logical device size is in blocks */
bdrv_get_geometry(conf->bs, &ld_size); bdrv_get_geometry(conf->bs, &ld_size);
info.ld_list[num_ld_disks].ld.v.target_id = sdev->id; info.ld_list[num_ld_disks].ld.v.target_id = sdev->id;
info.ld_list[num_ld_disks].ld.v.lun_id = sdev->lun;
info.ld_list[num_ld_disks].state = MFI_LD_STATE_OPTIMAL; info.ld_list[num_ld_disks].state = MFI_LD_STATE_OPTIMAL;
info.ld_list[num_ld_disks].size = cpu_to_le64(ld_size); info.ld_list[num_ld_disks].size = cpu_to_le64(ld_size);
num_ld_disks++; num_ld_disks++;
......
...@@ -1085,7 +1085,7 @@ struct mfi_pd_list { ...@@ -1085,7 +1085,7 @@ struct mfi_pd_list {
union mfi_ld_ref { union mfi_ld_ref {
struct { struct {
uint8_t target_id; uint8_t target_id;
uint8_t reserved; uint8_t lun_id;
uint16_t seq; uint16_t seq;
} v; } v;
uint32_t ref; uint32_t ref;
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册