scsi: qla2xxx: Change data_dsd into an array
authorBart Van Assche <bvanassche@acm.org>
Fri, 9 Aug 2019 03:01:33 +0000 (20:01 -0700)
committerMartin K. Petersen <martin.petersen@oracle.com>
Tue, 13 Aug 2019 01:34:05 +0000 (21:34 -0400)
This patch does not change any functionality but fixes a Coverity complaint
about using a scalar as an array.

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_def.h
drivers/scsi/qla2xxx/qla_iocb.c
drivers/scsi/qla2xxx/qla_target.c

index a94b0d4..1c6811b 100644 (file)
@@ -1852,7 +1852,7 @@ struct crc_context {
                        uint16_t        reserved_2;
                        uint16_t        reserved_3;
                        uint32_t        reserved_4;
-                       struct dsd64    data_dsd;
+                       struct dsd64    data_dsd[1];
                        uint32_t        reserved_5[2];
                        uint32_t        reserved_6;
                } nobundling;
@@ -1862,7 +1862,7 @@ struct crc_context {
                        uint16_t        reserved_1;
                        __le16  dseg_count;     /* Data segment count */
                        uint32_t        reserved_2;
-                       struct dsd64    data_dsd;
+                       struct dsd64    data_dsd[1];
                        struct dsd64    dif_dsd;
                } bundling;
        } u;
index b514ab4..6b12025 100644 (file)
@@ -1516,7 +1516,7 @@ qla24xx_build_scsi_crc_2_iocbs(srb_t *sp, struct cmd_type_crc_2 *cmd_pkt,
        }
 
        if (!bundling) {
-               cur_dsd = &crc_ctx_pkt->u.nobundling.data_dsd;
+               cur_dsd = &crc_ctx_pkt->u.nobundling.data_dsd[0];
        } else {
                /*
                 * Configure Bundling if we need to fetch interlaving
@@ -1526,7 +1526,7 @@ qla24xx_build_scsi_crc_2_iocbs(srb_t *sp, struct cmd_type_crc_2 *cmd_pkt,
                crc_ctx_pkt->u.bundling.dif_byte_count = cpu_to_le32(dif_bytes);
                crc_ctx_pkt->u.bundling.dseg_count = cpu_to_le16(tot_dsds -
                                                        tot_prot_dsds);
-               cur_dsd = &crc_ctx_pkt->u.bundling.data_dsd;
+               cur_dsd = &crc_ctx_pkt->u.bundling.data_dsd[0];
        }
 
        /* Finish the common fields of CRC pkt */
index 4c5f9c0..b8241d7 100644 (file)
@@ -3163,7 +3163,7 @@ qlt_build_ctio_crc2_pkt(struct qla_qpair *qpair, struct qla_tgt_prm *prm)
        pkt->crc_context_len = CRC_CONTEXT_LEN_FW;
 
        if (!bundling) {
-               cur_dsd = &crc_ctx_pkt->u.nobundling.data_dsd;
+               cur_dsd = &crc_ctx_pkt->u.nobundling.data_dsd[0];
        } else {
                /*
                 * Configure Bundling if we need to fetch interlaving
@@ -3173,7 +3173,7 @@ qlt_build_ctio_crc2_pkt(struct qla_qpair *qpair, struct qla_tgt_prm *prm)
                crc_ctx_pkt->u.bundling.dif_byte_count = cpu_to_le32(dif_bytes);
                crc_ctx_pkt->u.bundling.dseg_count =
                        cpu_to_le16(prm->tot_dsds - prm->prot_seg_cnt);
-               cur_dsd = &crc_ctx_pkt->u.bundling.data_dsd;
+               cur_dsd = &crc_ctx_pkt->u.bundling.data_dsd[0];
        }
 
        /* Finish the common fields of CRC pkt */