scsi: qla2xxx: Rework key encoding in qlt_find_host_by_d_id()
authorBart Van Assche <bvanassche@acm.org>
Fri, 9 Aug 2019 03:02:03 +0000 (20:02 -0700)
committerMartin K. Petersen <martin.petersen@oracle.com>
Tue, 13 Aug 2019 01:34:08 +0000 (21:34 -0400)
Use the same approach for encoding the destination ID as the approach used
by qlt_update_vp_map().

Cc: Himanshu Madhani <hmadhani@marvell.com>
Signed-off-by: Bart Van Assche <bvanassche@acm.org>
Tested-by: Himanshu Madhani <hmadhani@marvell.com>
Reviewed-by: Himanshu Madhani <hmadhani@marvell.com>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
drivers/scsi/qla2xxx/qla_target.c

index 3dd897d3e40002265af2dc5a171f077cff6bde9d..f7b72d1d4862eb65763b99126d1204e167afffcb 100644 (file)
@@ -191,16 +191,14 @@ struct scsi_qla_host *qlt_find_host_by_d_id(struct scsi_qla_host *vha,
                                            be_id_t d_id)
 {
        struct scsi_qla_host *host;
-       uint32_t key = 0;
+       uint32_t key;
 
        if (vha->d_id.b.area == d_id.area &&
            vha->d_id.b.domain == d_id.domain &&
            vha->d_id.b.al_pa == d_id.al_pa)
                return vha;
 
-       key  = d_id.domain << 16;
-       key |= d_id.area << 8;
-       key |= d_id.al_pa;
+       key = be_to_port_id(d_id).b24;
 
        host = btree_lookup32(&vha->hw->tgt.host_map, key);
        if (!host)