Commit 4003e24f authored by Hannes Reinecke's avatar Hannes Reinecke Committed by Paolo Bonzini
Browse files

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: default avatarHannes Reinecke <hare@suse.de>
Signed-off-by: default avatarPaolo Bonzini <pbonzini@redhat.com>
parent accfeb2d
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -1079,6 +1079,7 @@ static int megasas_dcmd_ld_get_list(MegasasState *s, MegasasCmd *cmd)
        /* Logical device size is in blocks */
        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.lun_id = sdev->lun;
        info.ld_list[num_ld_disks].state = MFI_LD_STATE_OPTIMAL;
        info.ld_list[num_ld_disks].size = cpu_to_le64(ld_size);
        num_ld_disks++;
+1 −1
Original line number Diff line number Diff line
@@ -1085,7 +1085,7 @@ struct mfi_pd_list {
union mfi_ld_ref {
    struct {
        uint8_t target_id;
        uint8_t reserved;
        uint8_t lun_id;
        uint16_t seq;
    } v;
    uint32_t ref;