[PATCH 5/6] qla2xxx: Merge all IOCB structs within qla_tgt_mgmt_cmd struct in qla_target.h.

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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


[Index of Archives]     [Linux SCSI]     [Kernel Newbies]     [Linux SCSI Target Infrastructure]     [Share Photos]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Linux IIO]     [Device Mapper]

  Powered by Linux