From: Madhuranath Iyengar <mni@xxxxxxxxxxxxxxx> Signed-off-by: Madhuranath Iyengar <mni@xxxxxxxxxxxxxxx> --- drivers/scsi/qla2xxx/qla_target.c | 19 +++++++++---------- drivers/scsi/qla2xxx/qla_target.h | 6 +----- 2 files changed, 10 insertions(+), 15 deletions(-) diff --git a/drivers/scsi/qla2xxx/qla_target.c b/drivers/scsi/qla2xxx/qla_target.c index b7c334a..0f222fd 100644 --- a/drivers/scsi/qla2xxx/qla_target.c +++ b/drivers/scsi/qla2xxx/qla_target.c @@ -1364,7 +1364,7 @@ static void qla_tgt_send_notify_ack(struct scsi_qla_host *vha, * ha->hardware_lock supposed to be held on entry. Might drop it, then reaquire */ static void qla_tgt_24xx_send_abts_resp(struct scsi_qla_host *vha, - const abts_recv_from_24xx_entry_t *abts, uint32_t status, + abts_recv_from_24xx_entry_t *abts, uint32_t status, bool ids_reversed) { struct qla_hw_data *ha = vha->hw; @@ -1501,7 +1501,7 @@ static int __qla_tgt_24xx_handle_abts(struct scsi_qla_host *vha, memset(mcmd, 0, sizeof(*mcmd)); mcmd->sess = sess; - memcpy(&mcmd->orig_iocb.abts, abts, sizeof(mcmd->orig_iocb.abts)); + memcpy(&mcmd->orig_iocb, abts, sizeof(mcmd->orig_iocb)); rc = ha->tgt_ops->handle_tmr(mcmd, 0, ABORT_TASK); if (rc != 0) { @@ -1576,7 +1576,7 @@ static void qla_tgt_24xx_handle_abts(struct scsi_qla_host *vha, static void qla_tgt_24xx_send_task_mgmt_ctio(struct scsi_qla_host *ha, struct qla_tgt_mgmt_cmd *mcmd, uint32_t resp_code) { - const atio7_from_24xx_entry_t *atio = &mcmd->orig_iocb.atio7; + atio7_from_24xx_entry_t *atio = (atio7_from_24xx_entry_t *)&mcmd->orig_iocb; ctio7_to_24xx_entry_t *ctio; ql_dbg(ql_dbg_tgt, ha, 0xe00a, "Sending task mgmt CTIO7 (ha=%p," @@ -1634,16 +1634,17 @@ void qla_tgt_xmit_tm_rsp(struct qla_tgt_mgmt_cmd *mcmd) if (IS_FWI2_CAPABLE(ha)) { if (mcmd->flags == QLA24XX_MGMT_SEND_NACK) { qla_tgt_send_notify_ack(vha, - (void *)&mcmd->orig_iocb.imm_ntfy, 0, 0, 0, 0, 0, 0); + (void *)&mcmd->orig_iocb, 0, 0, 0, 0, 0, 0); } else { if (mcmd->se_tmr_req->function == ABORT_TASK) - qla_tgt_24xx_send_abts_resp(vha, &mcmd->orig_iocb.abts, + qla_tgt_24xx_send_abts_resp(vha, + (abts_recv_from_24xx_entry_t *)&mcmd->orig_iocb, mcmd->fc_tm_rsp, false); else qla_tgt_24xx_send_task_mgmt_ctio(vha, mcmd, mcmd->fc_tm_rsp); } } else { - qla_tgt_send_notify_ack(vha, (void *)&mcmd->orig_iocb.imm_ntfy, + qla_tgt_send_notify_ack(vha, (void *)&mcmd->orig_iocb, 0, mcmd->fc_tm_rsp, 1, 0, 0, 0); } spin_unlock_irqrestore(&ha->hardware_lock, flags); @@ -3275,8 +3276,7 @@ static int qla_tgt_issue_task_mgmt(struct qla_tgt_sess *sess, uint32_t lun, mcmd->sess = sess; if (iocb) { - memcpy(&mcmd->orig_iocb.imm_ntfy, iocb, - sizeof(mcmd->orig_iocb.imm_ntfy)); + memcpy(&mcmd->orig_iocb, iocb, sizeof(mcmd->orig_iocb)); } mcmd->tmr_func = fn; mcmd->flags = flags; @@ -3417,8 +3417,7 @@ static int __qla_tgt_abort_task(struct scsi_qla_host *vha, memset(mcmd, 0, sizeof(*mcmd)); mcmd->sess = sess; - memcpy(&mcmd->orig_iocb.imm_ntfy, iocb, - sizeof(mcmd->orig_iocb.imm_ntfy)); + memcpy(&mcmd->orig_iocb, iocb, sizeof(mcmd->orig_iocb)); tag = le16_to_cpu(iocb->seq_id); diff --git a/drivers/scsi/qla2xxx/qla_target.h b/drivers/scsi/qla2xxx/qla_target.h index 8f69903..91d751d 100644 --- a/drivers/scsi/qla2xxx/qla_target.h +++ b/drivers/scsi/qla2xxx/qla_target.h @@ -983,11 +983,7 @@ struct qla_tgt_mgmt_cmd { struct se_tmr_req *se_tmr_req; unsigned int flags; #define QLA24XX_MGMT_SEND_NACK 1 - union { - atio7_from_24xx_entry_t atio7; - iocb_t imm_ntfy; - abts_recv_from_24xx_entry_t abts; - } __attribute__((packed)) orig_iocb; + iocb_t orig_iocb; }; struct qla_tgt_prm { -- 1.7.7 -- To unsubscribe from this list: send the line "unsubscribe target-devel" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html