From fb2fdb2ed6a26561f91626690292c7e7a55464ce Mon Sep 17 00:00:00 2001 From: Vladislav Bolkhovitin Date: Fri, 21 Nov 2008 12:12:53 +0000 Subject: [PATCH] Checkpatch warnings fixed git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@582 d57e44dd-8a1f-0410-8b47-8ef2f437770f --- qla2x00t/qla2x00-target/qla2x00t.c | 241 ++++++++++++++-------------- qla2x00t/qla2x00-target/qla2x00t.h | 34 ++-- qla2x00t/qla2x_tgt.h | 4 +- qla2x00t/qla2x_tgt_def.h | 246 ++++++++++++++--------------- scst_local/scst_local.c | 2 +- 5 files changed, 259 insertions(+), 268 deletions(-) diff --git a/qla2x00t/qla2x00-target/qla2x00t.c b/qla2x00t/qla2x00-target/qla2x00t.c index accfabc64..a4a627f8e 100644 --- a/qla2x00t/qla2x00-target/qla2x00t.c +++ b/qla2x00t/qla2x00-target/qla2x00t.c @@ -63,9 +63,9 @@ static void q2t_async_event(uint16_t code, scsi_qla_host_t *ha, uint16_t *mailbox); static void q2t_ctio_completion(scsi_qla_host_t *ha, uint32_t handle); static void q2t_host_action(scsi_qla_host_t *ha, - qla2x_tgt_host_action_t action); + enum qla2x_tgt_host_action action); static void q2t_send_term_exchange(scsi_qla_host_t *ha, struct q2t_cmd *cmd, - atio_entry_t *atio, int ha_locked); + struct atio_entry *atio, int ha_locked); /* * Global Variables @@ -77,25 +77,25 @@ unsigned long q2t_trace_flag = Q2T_DEFAULT_LOG_FLAGS; #endif struct scst_tgt_template tgt_template = { - name: "qla2x00tgt", - sg_tablesize: 0, - use_clustering: 1, + .name = "qla2x00tgt", + .sg_tablesize = 0, + .use_clustering = 1, #ifdef CONFIG_QLA_TGT_DEBUG_WORK_IN_THREAD - xmit_response_atomic: 0, - rdy_to_xfer_atomic: 0, + .xmit_response_atomic = 0, + .rdy_to_xfer_atomic = 0, #else - xmit_response_atomic: 1, - rdy_to_xfer_atomic: 1, + .xmit_response_atomic = 1, + .rdy_to_xfer_atomic = 1, #endif - detect: q2t_target_detect, - release: q2t_target_release, - xmit_response: q2t_xmit_response, - rdy_to_xfer: q2t_rdy_to_xfer, - on_free_cmd: q2t_on_free_cmd, - task_mgmt_fn_done: q2t_task_mgmt_fn_done, + .detect = q2t_target_detect, + .release = q2t_target_release, + .xmit_response = q2t_xmit_response, + .rdy_to_xfer = q2t_rdy_to_xfer, + .on_free_cmd = q2t_on_free_cmd, + .task_mgmt_fn_done = q2t_task_mgmt_fn_done, }; -struct kmem_cache *q2t_cmd_cachep = NULL; +struct kmem_cache *q2t_cmd_cachep; static struct qla2x_tgt_target tgt_data; /* @@ -130,23 +130,25 @@ static inline void q2t_exec_queue(scsi_qla_host_t *ha) static void q2t_modify_command_count(scsi_qla_host_t *ha, int cmd_count, int imm_count) { - modify_lun_entry_t *pkt; + struct modify_lun_entry *pkt; TRACE_ENTRY(); TRACE_DBG("Sending MODIFY_LUN ha %p, cmd %d, imm %d", ha, cmd_count, imm_count); - pkt = (modify_lun_entry_t *)tgt_data.req_pkt(ha); + pkt = (struct modify_lun_entry *)tgt_data.req_pkt(ha); ha->tgt->modify_lun_expected++; pkt->entry_type = MODIFY_LUN_TYPE; pkt->entry_count = 1; if (cmd_count < 0) { - pkt->operators = MODIFY_LUN_CMD_SUB; /* Subtract from command count */ + /* Subtract from command count */ + pkt->operators = MODIFY_LUN_CMD_SUB; pkt->command_count = -cmd_count; - } else if (cmd_count > 0){ - pkt->operators = MODIFY_LUN_CMD_ADD; /* Add to command count */ + } else if (cmd_count > 0) { + /* Add to command count */ + pkt->operators = MODIFY_LUN_CMD_ADD; pkt->command_count = cmd_count; } @@ -171,7 +173,7 @@ static void __q2t_send_notify_ack(scsi_qla_host_t *ha, uint16_t seq_id, uint32_t add_flags, uint16_t resp_code, int resp_code_valid, uint16_t ox_id) { - nack_entry_t *ntfy; + struct nack_entry *ntfy; TRACE_ENTRY(); @@ -182,7 +184,7 @@ static void __q2t_send_notify_ack(scsi_qla_host_t *ha, goto out; } - ntfy = (nack_entry_t *)tgt_data.req_pkt(ha); + ntfy = (struct nack_entry *)tgt_data.req_pkt(ha); if (ha->tgt != NULL) ha->tgt->notify_ack_expected++; @@ -217,7 +219,7 @@ out: } /* ha->hardware_lock supposed to be held on entry */ static inline void q2t_send_notify_ack(scsi_qla_host_t *ha, - notify_entry_t *iocb, uint32_t add_flags, uint16_t resp_code, + struct notify_entry *iocb, uint32_t add_flags, uint16_t resp_code, int resp_code_valid) { __q2t_send_notify_ack(ha, GET_TARGET_ID(ha, iocb), iocb->status, @@ -233,11 +235,11 @@ static int q2t_target_detect(struct scst_tgt_template *templ) { int res; struct qla2x_tgt_initiator itd = { - magic:QLA2X_TARGET_MAGIC, - tgt_response_pkt:q2t_response_pkt, - tgt_ctio_completion:q2t_ctio_completion, - tgt_async_event:q2t_async_event, - tgt_host_action:q2t_host_action, + .magic = QLA2X_TARGET_MAGIC, + .tgt_response_pkt = q2t_response_pkt, + .tgt_ctio_completion = q2t_ctio_completion, + .tgt_async_event = q2t_async_event, + .tgt_host_action = q2t_host_action, }; TRACE_ENTRY(); @@ -248,11 +250,11 @@ static int q2t_target_detect(struct scst_tgt_template *templ) goto out; } - if (tgt_data.magic != QLA2X_INITIATOR_MAGIC) { - PRINT_ERROR("Wrong version of the initiator driver: %d", - tgt_data.magic); - res = -EINVAL; - } + if (tgt_data.magic != QLA2X_INITIATOR_MAGIC) { + PRINT_ERROR("Wrong version of the initiator driver: %d", + tgt_data.magic); + res = -EINVAL; + } out: TRACE_EXIT(); @@ -376,7 +378,7 @@ static int q2t_target_release(struct scst_tgt *scst_tgt) wait_event(tgt->waitQ, test_tgt_sess_count(tgt, ha)); /* big hammer */ - if(!ha->flags.host_shutting_down) + if (!ha->flags.host_shutting_down) tgt_data.disable_lun(ha); /* wait for sessions to clear out (just in case) */ @@ -418,8 +420,7 @@ static int q2t_pci_map_calc_cnt(struct q2t_prm *prm) prm->tgt->datasegs_per_cmd) / prm->tgt->datasegs_per_cont; if (((uint16_t)(prm->seg_cnt - prm->tgt->datasegs_per_cmd)) % - prm->tgt->datasegs_per_cont) - { + prm->tgt->datasegs_per_cont) { prm->req_cnt++; } } @@ -445,9 +446,9 @@ static inline uint32_t q2t_make_handle(scsi_qla_host_t *ha) /* always increment cmd handle */ do { ++h; - if (h > MAX_OUTSTANDING_COMMANDS) { + if (h > MAX_OUTSTANDING_COMMANDS) h = 0; - } + if (h == ha->current_cmd) { TRACE(TRACE_OUT_OF_MEM, "Ran out of empty cmd slots " "in ha %p", ha); @@ -477,7 +478,7 @@ static void q2t_build_ctio_pkt(struct q2t_prm *prm) uint16_t timeout; uint32_t h; - prm->pkt = (ctio_common_entry_t *)tgt_data.req_pkt(prm->tgt->ha); + prm->pkt = (struct ctio_common_entry *)tgt_data.req_pkt(prm->tgt->ha); if (prm->tgt->tgt_enable_64bit_addr) prm->pkt->entry_type = CTIO_A64_TYPE; @@ -487,9 +488,8 @@ static void q2t_build_ctio_pkt(struct q2t_prm *prm) prm->pkt->entry_count = (uint8_t) prm->req_cnt; h = q2t_make_handle(prm->tgt->ha); - if (h != Q2T_NULL_HANDLE) { + if (h != Q2T_NULL_HANDLE) prm->tgt->ha->cmds[h] = prm->cmd; - } prm->pkt->handle = h | CTIO_COMPLETION_HANDLE_MARK; timeout = Q2T_TIMEOUT; @@ -541,8 +541,7 @@ static void q2t_load_data_segments(struct q2t_prm *prm) /* Load command entry data segments */ for (cnt = 0; (cnt < prm->tgt->datasegs_per_cmd) && prm->seg_cnt; - cnt++, prm->seg_cnt--) - { + cnt++, prm->seg_cnt--) { *dword_ptr++ = cpu_to_le32(pci_dma_lo32(sg_dma_address(prm->sg))); if (enable_64bit_addressing) { @@ -553,9 +552,11 @@ static void q2t_load_data_segments(struct q2t_prm *prm) *dword_ptr++ = cpu_to_le32(sg_dma_len(prm->sg)); TRACE_SG("S/G Segment phys_addr=%llx:%llx, len=%d", - (long long unsigned int)pci_dma_hi32(sg_dma_address(prm->sg)), - (long long unsigned int)pci_dma_lo32(sg_dma_address(prm->sg)), - (int)sg_dma_len(prm->sg)); + (long long unsigned int)pci_dma_hi32( + sg_dma_address(prm->sg)), + (long long unsigned int)pci_dma_lo32( + sg_dma_address(prm->sg)), + (int)sg_dma_len(prm->sg)); prm->sg++; } @@ -571,7 +572,7 @@ static void q2t_load_data_segments(struct q2t_prm *prm) /* * Make sure that from cont_pkt64 none of * 64-bit specific fields used for 32-bit - * addressing. Cast to (cont_entry_t*) for + * addressing. Cast to (cont_entry_t *) for * that. */ @@ -583,19 +584,18 @@ static void q2t_load_data_segments(struct q2t_prm *prm) if (enable_64bit_addressing) { cont_pkt64->entry_type = CONTINUE_A64_TYPE; dword_ptr = - (uint32_t*)&cont_pkt64->dseg_0_address; + (uint32_t *)&cont_pkt64->dseg_0_address; } else { cont_pkt64->entry_type = CONTINUE_TYPE; dword_ptr = - (uint32_t*)&((cont_entry_t *) + (uint32_t *)&((cont_entry_t *) cont_pkt64)->dseg_0_address; } /* Load continuation entry data segments */ for (cnt = 0; cnt < prm->tgt->datasegs_per_cont && prm->seg_cnt; - cnt++, prm->seg_cnt--) - { + cnt++, prm->seg_cnt--) { *dword_ptr++ = cpu_to_le32(pci_dma_lo32 (sg_dma_address(prm->sg))); @@ -607,10 +607,12 @@ static void q2t_load_data_segments(struct q2t_prm *prm) } *dword_ptr++ = cpu_to_le32(sg_dma_len(prm->sg)); - TRACE_SG("S/G Segment Cont. phys_addr=%llx:%llx, len=%d", - (long long unsigned int)pci_dma_hi32(sg_dma_address(prm->sg)), - (long long unsigned int)pci_dma_lo32(sg_dma_address(prm->sg)), - (int)sg_dma_len(prm->sg)); + TRACE_SG("S/G Cont. phys_addr=%llx:%llx, len=%d", + (long long unsigned int)pci_dma_hi32( + sg_dma_address(prm->sg)), + (long long unsigned int)pci_dma_lo32( + sg_dma_address(prm->sg)), + (int)sg_dma_len(prm->sg)); prm->sg++; } @@ -623,7 +625,7 @@ out: return; } -static void q2t_init_ctio_ret_entry(ctio_ret_entry_t *ctio_m1, +static void q2t_init_ctio_ret_entry(struct ctio_ret_entry *ctio_m1, struct q2t_prm *prm) { TRACE_ENTRY(); @@ -779,8 +781,8 @@ static int q2t_xmit_response(struct scst_cmd *scst_cmd) prm.pkt->flags |= __constant_cpu_to_le16(OF_SSTS); } else { - ctio_ret_entry_t *ctio_m1 = - (ctio_ret_entry_t *) + struct ctio_ret_entry *ctio_m1 = + (struct ctio_ret_entry *) tgt_data.req_cont_pkt(prm.tgt->ha); TRACE_DBG("%s", "Building additional status " @@ -800,12 +802,14 @@ static int q2t_xmit_response(struct scst_cmd *scst_cmd) REQUEST_ENTRY_SIZE); } } else - q2t_init_ctio_ret_entry((ctio_ret_entry_t *)prm.pkt, &prm); - } else { - q2t_init_ctio_ret_entry((ctio_ret_entry_t *)prm.pkt, &prm); - } + q2t_init_ctio_ret_entry( + (struct ctio_ret_entry *)prm.pkt, &prm); + } else + q2t_init_ctio_ret_entry((struct ctio_ret_entry *)prm.pkt, + &prm); - prm.cmd->state = Q2T_STATE_PROCESSED; /* Mid-level is done processing */ + /* Mid-level is done processing */ + prm.cmd->state = Q2T_STATE_PROCESSED; TRACE_BUFFER("Xmitting", prm.pkt, REQUEST_ENTRY_SIZE); @@ -890,9 +894,9 @@ out_unlock: } static void q2t_send_term_exchange(scsi_qla_host_t *ha, struct q2t_cmd *cmd, - atio_entry_t *atio, int ha_locked) + struct atio_entry *atio, int ha_locked) { - ctio_ret_entry_t *ctio; + struct ctio_ret_entry *ctio; unsigned long flags = 0; int do_tgt_cmd_done = 0; @@ -910,7 +914,7 @@ static void q2t_send_term_exchange(scsi_qla_host_t *ha, struct q2t_cmd *cmd, goto out_unlock; } - ctio = (ctio_ret_entry_t *)tgt_data.req_pkt(ha); + ctio = (struct ctio_ret_entry *)tgt_data.req_pkt(ha); if (ctio == NULL) { PRINT_ERROR("qla2x00tgt(%ld): %s failed: unable to allocate " "request packet", ha->host_no, __func__); @@ -1001,7 +1005,7 @@ static inline struct scst_cmd *q2t_get_cmd(scsi_qla_host_t *ha, uint32_t handle) static void q2t_do_ctio_completion(scsi_qla_host_t *ha, uint32_t handle, uint16_t status, - ctio_common_entry_t *ctio) + struct ctio_common_entry *ctio) { struct scst_cmd *scst_cmd; struct q2t_cmd *cmd; @@ -1057,12 +1061,10 @@ static void q2t_do_ctio_completion(scsi_qla_host_t *ha, } if (handle != Q2T_NULL_HANDLE) { - if (unlikely(handle == Q2T_SKIP_HANDLE)) { + if (unlikely(handle == Q2T_SKIP_HANDLE)) goto out; - } - if (unlikely(handle == Q2T_BUSY_HANDLE)) { + if (unlikely(handle == Q2T_BUSY_HANDLE)) goto out; - } scst_cmd = q2t_get_cmd(ha, handle); if (unlikely(scst_cmd == NULL)) { PRINT_INFO("qla2x00tgt(%ld): Suspicious: unable to " @@ -1070,10 +1072,9 @@ static void q2t_do_ctio_completion(scsi_qla_host_t *ha, ha->host_no, handle); goto out; } - if (unlikely(err)) { + if (unlikely(err)) TRACE_MGMT_DBG("Found by handle failed CTIO scst_cmd " "%p (op %x)", scst_cmd, scst_cmd->cdb[0]); - } } else if (ctio != NULL) { uint32_t tag = le16_to_cpu(ctio->exchange_id); struct q2t_sess *sess = q2t_find_sess_by_lid(ha->tgt, loop_id); @@ -1093,20 +1094,18 @@ static void q2t_do_ctio_completion(scsi_qla_host_t *ha, ha->host_no, tag, loop_id); goto out; } - if (unlikely(err)) { + if (unlikely(err)) TRACE_MGMT_DBG("Found by ctio failed CTIO scst_cmd %p " "(op %x)", scst_cmd, scst_cmd->cdb[0]); - } TRACE_DBG("Found scst_cmd %p", scst_cmd); } else goto out; cmd = (struct q2t_cmd *)scst_cmd_get_tgt_priv(scst_cmd); - if (unlikely(err)) { + if (unlikely(err)) TRACE(TRACE_MGMT_MINOR, "Failed CTIO state %d (err %x)", cmd->state, status); - } if (cmd->state == Q2T_STATE_PROCESSED) { TRACE_DBG("Command %p finished", cmd); @@ -1175,13 +1174,13 @@ static void q2t_ctio_completion(scsi_qla_host_t *ha, uint32_t handle) } /* ha->hardware_lock supposed to be held on entry */ -static void q2t_send_busy(scsi_qla_host_t *ha, atio_entry_t *atio) +static void q2t_send_busy(scsi_qla_host_t *ha, struct atio_entry *atio) { - ctio_ret_entry_t *ctio; + struct ctio_ret_entry *ctio; TRACE_ENTRY(); - ctio = (ctio_ret_entry_t *)tgt_data.req_pkt(ha); + ctio = (struct ctio_ret_entry *)tgt_data.req_pkt(ha); ctio->entry_type = CTIO_RET_TYPE; ctio->entry_count = 1; ctio->handle = Q2T_BUSY_HANDLE | CTIO_COMPLETION_HANDLE_MARK; @@ -1270,7 +1269,8 @@ static int q2t_do_send_cmd_to_scst(scsi_qla_host_t *ha, struct q2t_cmd *cmd) #endif TRACE_DBG("Context %x", context); - TRACE(TRACE_SCSI, "START Command (tag %lld)", scst_cmd_get_tag(cmd->scst_cmd)); + TRACE(TRACE_SCSI, "START Command (tag %lld)", + scst_cmd_get_tag(cmd->scst_cmd)); scst_cmd_init_done(cmd->scst_cmd, context); out: @@ -1357,7 +1357,7 @@ out: } /* ha->hardware_lock supposed to be held on entry */ -static int q2t_send_cmd_to_scst(scsi_qla_host_t *ha, atio_entry_t *atio) +static int q2t_send_cmd_to_scst(scsi_qla_host_t *ha, struct atio_entry *atio) { int res = 0; struct q2t_tgt *tgt; @@ -1441,8 +1441,9 @@ static int q2t_send_cmd_to_scst(scsi_qla_host_t *ha, atio_entry_t *atio) } if (sess->scst_sess == NULL) { - PRINT_ERROR("qla2x00tgt(%ld): scst_register_session() failed " - "for host %ld(%p)", ha->host_no, ha->host_no, ha); + PRINT_ERROR("qla2x00tgt(%ld): scst_register_session() " + "failed for host %ld(%p)", ha->host_no, + ha->host_no, ha); res = -EFAULT; goto out_free_sess; } @@ -1472,7 +1473,7 @@ out_free_cmd: } /* ha->hardware_lock supposed to be held on entry */ -static int q2t_handle_task_mgmt(scsi_qla_host_t *ha, notify_entry_t *iocb) +static int q2t_handle_task_mgmt(scsi_qla_host_t *ha, struct notify_entry *iocb) { int res = 0, rc = -1; struct q2t_mgmt_cmd *mcmd; @@ -1566,7 +1567,7 @@ out_free: } /* ha->hardware_lock supposed to be held on entry */ -static int q2t_abort_task(scsi_qla_host_t *ha, notify_entry_t *iocb) +static int q2t_abort_task(scsi_qla_host_t *ha, struct notify_entry *iocb) { int res = 0, rc; struct q2t_mgmt_cmd *mcmd; @@ -1648,7 +1649,8 @@ out: } /* ha->hardware_lock supposed to be held on entry */ -static void q2t_handle_imm_notify(scsi_qla_host_t *ha, notify_entry_t *iocb) +static void q2t_handle_imm_notify(scsi_qla_host_t *ha, + struct notify_entry *iocb) { uint16_t status; int loop_id; @@ -1749,7 +1751,7 @@ out: /* called via callback from qla2xxx */ static void q2t_response_pkt(scsi_qla_host_t *ha, sts_entry_t *pkt) { - atio_entry_t *atio; + struct atio_entry *atio; TRACE_ENTRY(); @@ -1774,7 +1776,7 @@ static void q2t_response_pkt(scsi_qla_host_t *ha, sts_entry_t *pkt) case ACCEPT_TGT_IO_TYPE: if (ha->flags.enable_target_mode && ha->tgt != NULL) { int rc; - atio = (atio_entry_t *)pkt; + atio = (struct atio_entry *)pkt; TRACE_DBG("ACCEPT_TGT_IO host_no %ld status %04x " "lun %04x read/write %d data_length %08x " "target_id %02x exchange_id %04x ", @@ -1799,14 +1801,16 @@ static void q2t_response_pkt(scsi_qla_host_t *ha, sts_entry_t *pkt) #if 1 /* With TERM EXCHANGE some FC cards refuse to boot */ q2t_send_busy(ha, atio); #else - q2t_send_term_exchange(ha, NULL, atio, 1); + q2t_send_term_exchange(ha, NULL, + atio, 1); #endif } else { if (!ha->tgt->tgt_shutdown) { - PRINT_INFO("qla2x00tgt(%ld): Unable to " - "send the command to SCSI target " - "mid-level, sending BUSY status", - ha->host_no); + PRINT_INFO("qla2x00tgt(%ld): " + "Unable to send the " + "command to SCSI target " + "mid-level, sending BUSY " + "status", ha->host_no); } q2t_send_busy(ha, atio); } @@ -1819,7 +1823,8 @@ static void q2t_response_pkt(scsi_qla_host_t *ha, sts_entry_t *pkt) case CONTINUE_TGT_IO_TYPE: if (ha->flags.enable_target_mode && ha->tgt != NULL) { - ctio_common_entry_t *entry = (ctio_common_entry_t *)pkt; + struct ctio_common_entry *entry = + (struct ctio_common_entry *)pkt; TRACE_DBG("CONTINUE_TGT_IO: host_no %ld", ha->host_no); q2t_do_ctio_completion(ha, entry->handle, @@ -1833,7 +1838,8 @@ static void q2t_response_pkt(scsi_qla_host_t *ha, sts_entry_t *pkt) case CTIO_A64_TYPE: if (ha->flags.enable_target_mode && ha->tgt != NULL) { - ctio_common_entry_t *entry = (ctio_common_entry_t *)pkt; + struct ctio_common_entry *entry = + (struct ctio_common_entry *)pkt; TRACE_DBG("CTIO_A64: host_no %ld", ha->host_no); q2t_do_ctio_completion(ha, entry->handle, le16_to_cpu(entry->status), @@ -1846,7 +1852,7 @@ static void q2t_response_pkt(scsi_qla_host_t *ha, sts_entry_t *pkt) case IMMED_NOTIFY_TYPE: TRACE_DBG("%s", "IMMED_NOTIFY"); - q2t_handle_imm_notify(ha, (notify_entry_t *)pkt); + q2t_handle_imm_notify(ha, (struct notify_entry *)pkt); break; case NOTIFY_ACK_TYPE: @@ -1854,7 +1860,7 @@ static void q2t_response_pkt(scsi_qla_host_t *ha, sts_entry_t *pkt) PRINT_ERROR("qla2x00tgt(%ld): NOTIFY_ACK recieved " "with NULL tgt", ha->host_no); } else if (ha->tgt->notify_ack_expected > 0) { - nack_entry_t *entry = (nack_entry_t *)pkt; + struct nack_entry *entry = (struct nack_entry *)pkt; TRACE_DBG("NOTIFY_ACK seq %04x status %x", le16_to_cpu(entry->seq_id), le16_to_cpu(entry->status)); @@ -1874,24 +1880,24 @@ static void q2t_response_pkt(scsi_qla_host_t *ha, sts_entry_t *pkt) case MODIFY_LUN_TYPE: if ((ha->tgt != NULL) && (ha->tgt->modify_lun_expected > 0)) { struct q2t_tgt *tgt = ha->tgt; - modify_lun_entry_t *entry = (modify_lun_entry_t *)pkt; + struct modify_lun_entry *entry = + (struct modify_lun_entry *)pkt; TRACE_DBG("MODIFY_LUN %x, imm %c%d, cmd %c%d", - entry->status, - (entry->operators & MODIFY_LUN_IMM_ADD) ?'+' - :(entry->operators & MODIFY_LUN_IMM_SUB) ?'-' - :' ', - entry->immed_notify_count, - (entry->operators & MODIFY_LUN_CMD_ADD) ?'+' - :(entry->operators & MODIFY_LUN_CMD_SUB) ?'-' - :' ', - entry->command_count); + entry->status, + (entry->operators & MODIFY_LUN_IMM_ADD) ? '+' + : (entry->operators & MODIFY_LUN_IMM_SUB) ? + '-' : ' ', + entry->immed_notify_count, + (entry->operators & MODIFY_LUN_CMD_ADD) ? '+' + : (entry->operators & MODIFY_LUN_CMD_SUB) ? + '-' : ' ', + entry->command_count); tgt->modify_lun_expected--; if (entry->status != MODIFY_LUN_SUCCESS) { PRINT_ERROR("qla2x00tgt(%ld): MODIFY_LUN " "failed %x", ha->host_no, entry->status); } - tgt->disable_lun_status = entry->status; } else { PRINT_ERROR("qla2x00tgt(%ld): Unexpected MODIFY_LUN " "received", (ha != NULL) ? ha->host_no : -1); @@ -1900,8 +1906,7 @@ static void q2t_response_pkt(scsi_qla_host_t *ha, sts_entry_t *pkt) case ENABLE_LUN_TYPE: if (ha->tgt != NULL) { - struct q2t_tgt *tgt = ha->tgt; - elun_entry_t *entry = (elun_entry_t *)pkt; + struct elun_entry *entry = (struct elun_entry *)pkt; TRACE_DBG("ENABLE_LUN %x imm %u cmd %u ", entry->status, entry->immed_notify_count, entry->command_count); @@ -1921,7 +1926,6 @@ static void q2t_response_pkt(scsi_qla_host_t *ha, sts_entry_t *pkt) ha->flags.enable_target_mode = ~ha->flags.enable_target_mode; } /* else success */ - tgt->disable_lun_status = entry->status; } break; @@ -1938,7 +1942,8 @@ out: /* ha->hardware_lock supposed to be held on entry */ /* called via callback from qla2xxx */ -static void q2t_async_event(uint16_t code, scsi_qla_host_t *ha, uint16_t *mailbox) +static void q2t_async_event(uint16_t code, scsi_qla_host_t *ha, + uint16_t *mailbox) { TRACE_ENTRY(); @@ -2021,7 +2026,7 @@ out: /* no lock held on entry */ /* called via callback from qla2xxx */ static void q2t_host_action(scsi_qla_host_t *ha, - qla2x_tgt_host_action_t action) + enum qla2x_tgt_host_action action) { struct q2t_tgt *tgt = NULL; unsigned long flags = 0; @@ -2045,7 +2050,6 @@ static void q2t_host_action(scsi_qla_host_t *ha, } tgt->ha = ha; - tgt->disable_lun_status = Q2T_DISABLE_LUN_STATUS_NOT_SET; INIT_LIST_HEAD(&tgt->sess_list); init_waitqueue_head(&tgt->waitQ); @@ -2102,7 +2106,7 @@ static void q2t_host_action(scsi_qla_host_t *ha, ha->flags.enable_target_mode = 0; spin_unlock_irqrestore(&ha->hardware_lock, flags); - if(!ha->flags.host_shutting_down) + if (!ha->flags.host_shutting_down) tgt_data.disable_lun(ha); goto out; @@ -2208,9 +2212,8 @@ static void q2t_proc_log_entry_clean(struct scst_tgt_template *templ) TRACE_ENTRY(); root = scst_proc_get_tgt_root(templ); - if (root) { + if (root) remove_proc_entry(Q2T_PROC_LOG_ENTRY_NAME, root); - } TRACE_EXIT(); #endif diff --git a/qla2x00t/qla2x00-target/qla2x00t.h b/qla2x00t/qla2x00-target/qla2x00t.h index 233a94c0a..a8047364a 100644 --- a/qla2x00t/qla2x00-target/qla2x00t.h +++ b/qla2x00t/qla2x00-target/qla2x00t.h @@ -29,8 +29,8 @@ #include /* Version numbers, the same as for the kernel */ -#define Q2T_VERSION(a,b,c,d) (((a) << 030) + ((b) << 020) + (c) << 010 + (d)) -#define Q2T_VERSION_CODE Q2T_VERSION(1,0,0,0) +#define Q2T_VERSION(a, b, c, d) (((a) << 030) + ((b) << 020) + (c) << 010 + (d)) +#define Q2T_VERSION_CODE Q2T_VERSION(1, 0, 0, 0) #define Q2T_VERSION_STRING "1.0.1" #define Q2T_MAX_CDB_LEN 16 @@ -63,14 +63,14 @@ #define Q2T_STATE_NEW 0 /* New command and SCST processing it */ #define Q2T_STATE_PROCESSED 1 /* SCST done processing */ #define Q2T_STATE_NEED_DATA 2 /* SCST needs data to continue */ -#define Q2T_STATE_DATA_IN 3 /* Data arrived and SCST processing them */ +#define Q2T_STATE_DATA_IN 3 /* Data arrived and SCST processing */ + /* them */ #define Q2T_STATE_ABORTED 4 /* Command aborted */ /* Misc */ #define Q2T_NULL_HANDLE 0 #define Q2T_SKIP_HANDLE (0xFFFFFFFE & ~CTIO_COMPLETION_HANDLE_MARK) #define Q2T_BUSY_HANDLE (0xFFFFFFFF & ~CTIO_COMPLETION_HANDLE_MARK) -#define Q2T_DISABLE_LUN_STATUS_NOT_SET -1 /* ATIO task_codes fields */ #define ATIO_SIMPLE_QUEUE 0 @@ -93,49 +93,43 @@ /* * Equivilant to IT Nexus (Initiator-Target) */ -struct q2t_sess -{ +struct q2t_sess { struct list_head list; struct scst_session *scst_sess; struct q2t_tgt *tgt; int loop_id; }; -struct q2t_cmd -{ +struct q2t_cmd { struct q2t_sess *sess; struct scst_cmd *scst_cmd; int state; - atio_entry_t atio; + struct atio_entry atio; dma_addr_t dma_handle; uint32_t iocb_cnt; }; -struct q2t_tgt -{ +struct q2t_tgt { struct scst_tgt *scst_tgt; scsi_qla_host_t *ha; int datasegs_per_cmd, datasegs_per_cont; /* Target's flags, serialized by ha->hardware_lock */ unsigned int tgt_shutdown:1; /* The driver is being released */ - unsigned int tgt_enable_64bit_addr:1; /* 64-bits PCI addressing enabled */ + unsigned int tgt_enable_64bit_addr:1; /* 64bit PCI addressing enabled */ wait_queue_head_t waitQ; int notify_ack_expected; - volatile int modify_lun_expected; - volatile int disable_lun_status; + int modify_lun_expected; /* Count of sessions refering q2t_tgt, protected by hardware_lock */ int sess_count; struct list_head sess_list; }; -struct q2t_mgmt_cmd -{ +struct q2t_mgmt_cmd { struct q2t_sess *sess; - notify_entry_t notify_entry; + struct notify_entry notify_entry; }; -struct q2t_prm -{ +struct q2t_prm { struct q2t_tgt *tgt; uint16_t req_cnt; uint16_t seg_cnt; @@ -149,7 +143,7 @@ struct q2t_prm unsigned int sense_buffer_len; int residual; struct q2t_cmd *cmd; - ctio_common_entry_t *pkt; + struct ctio_common_entry *pkt; }; /* ha->hardware_lock supposed to be held on entry (to protect tgt->sess_list) */ diff --git a/qla2x00t/qla2x_tgt.h b/qla2x00t/qla2x_tgt.h index 4a268d704..7bd53111f 100644 --- a/qla2x00t/qla2x_tgt.h +++ b/qla2x00t/qla2x_tgt.h @@ -50,9 +50,9 @@ extern request_t *qla2x00_req_pkt(scsi_qla_host_t *ha); static inline void __qla2x00_en_dis_lun(scsi_qla_host_t *ha, int enable) { - elun_entry_t *pkt; + struct elun_entry *pkt; - if ((pkt = (elun_entry_t *)qla2x00_req_pkt(ha)) != NULL) { + if ((pkt = (struct elun_entry *)qla2x00_req_pkt(ha)) != NULL) { pkt->entry_type = ENABLE_LUN_TYPE; if (enable) { pkt->command_count = QLA2X00_COMMAND_COUNT_INIT; diff --git a/qla2x00t/qla2x_tgt_def.h b/qla2x00t/qla2x_tgt_def.h index cc83e50e4..a4ff993aa 100644 --- a/qla2x00t/qla2x_tgt_def.h +++ b/qla2x00t/qla2x_tgt_def.h @@ -53,7 +53,8 @@ */ #define CTIO_COMPLETION_HANDLE_MARK BIT_15 #if (CTIO_COMPLETION_HANDLE_MARK <= MAX_OUTSTANDING_COMMANDS) -#error "Hackish CTIO_COMPLETION_HANDLE_MARK no longer larger than MAX_OUTSTANDING_COMMANDS" +#error "Hackish CTIO_COMPLETION_HANDLE_MARK no longer larger than \ + MAX_OUTSTANDING_COMMANDS" #endif #define HANDLE_IS_CTIO_COMP(h) (h & CTIO_COMPLETION_HANDLE_MARK) @@ -61,31 +62,31 @@ /* * ISP target entries - Flags bit definitions. */ -#define OF_SS_MODE_0 0 -#define OF_SS_MODE_1 1 -#define OF_SS_MODE_2 2 -#define OF_SS_MODE_3 3 +#define OF_SS_MODE_0 0 +#define OF_SS_MODE_1 1 +#define OF_SS_MODE_2 2 +#define OF_SS_MODE_3 3 -#define OF_RESET BIT_5 /* Reset LIP flag */ -#define OF_DATA_IN BIT_6 /* Data in to initiator */ - /* (data from target to initiator) */ -#define OF_DATA_OUT BIT_7 /* Data out from initiator */ - /* (data from initiator to target) */ -#define OF_NO_DATA (BIT_7 | BIT_6) -#define OF_INC_RC BIT_8 /* Increment command resource count */ -#define OF_FAST_POST BIT_9 /* Enable mailbox fast posting. */ -#define OF_TERM_EXCH BIT_14 /* Terminate exchange */ -#define OF_SSTS BIT_15 /* Send SCSI status */ +#define OF_RESET BIT_5 /* Reset LIP flag */ +#define OF_DATA_IN BIT_6 /* Data in to initiator */ + /* (data from target to initiator) */ +#define OF_DATA_OUT BIT_7 /* Data out from initiator */ + /* (data from initiator to target) */ +#define OF_NO_DATA (BIT_7 | BIT_6) +#define OF_INC_RC BIT_8 /* Increment command resource count */ +#define OF_FAST_POST BIT_9 /* Enable mailbox fast posting. */ +#define OF_TERM_EXCH BIT_14 /* Terminate exchange */ +#define OF_SSTS BIT_15 /* Send SCSI status */ #endif #ifndef DATASEGS_PER_COMMAND32 -#define DATASEGS_PER_COMMAND32 3 -#define DATASEGS_PER_CONT32 7 +#define DATASEGS_PER_COMMAND32 3 +#define DATASEGS_PER_CONT32 7 #define QLA_MAX_SG32(ql) \ (DATASEGS_PER_COMMAND32 + (((ql) > 0) ? DATASEGS_PER_CONT32*((ql) - 1) : 0)) -#define DATASEGS_PER_COMMAND64 2 -#define DATASEGS_PER_CONT64 5 +#define DATASEGS_PER_COMMAND64 2 +#define DATASEGS_PER_CONT64 5 #define QLA_MAX_SG64(ql) \ (DATASEGS_PER_COMMAND64 + (((ql) > 0) ? DATASEGS_PER_CONT64*((ql) - 1) : 0)) #endif @@ -96,11 +97,10 @@ #ifndef ENABLE_LUN_TYPE #define ENABLE_LUN_TYPE 0x0B /* Enable LUN entry. */ -/*! +/* * ISP queue - enable LUN entry structure definition. */ -typedef struct -{ +struct elun_entry { uint8_t entry_type; /* Entry type. */ uint8_t entry_count; /* Entry count. */ uint8_t sys_define; /* System defined. */ @@ -113,29 +113,29 @@ typedef struct uint8_t status; uint8_t reserved_4; uint8_t command_count; /* Number of ATIOs allocated. */ - uint8_t immed_notify_count; /* Number of Immediate Notify entries allocated. */ + uint8_t immed_notify_count; /* Number of Immediate Notify entries */ + /* allocated. */ uint16_t reserved_5; uint16_t timeout; /* 0 = 30 seconds, 0xFFFF = disable */ uint16_t reserved_6[20]; -} elun_entry_t; -#define ENABLE_LUN_SUCCESS 0x01 -#define ENABLE_LUN_RC_NONZERO 0x04 -#define ENABLE_LUN_INVALID_REQUEST 0x06 -#define ENABLE_LUN_ALREADY_ENABLED 0x3E +}; +#define ENABLE_LUN_SUCCESS 0x01 +#define ENABLE_LUN_RC_NONZERO 0x04 +#define ENABLE_LUN_INVALID_REQUEST 0x06 +#define ENABLE_LUN_ALREADY_ENABLED 0x3E #endif #ifndef MODIFY_LUN_TYPE -#define MODIFY_LUN_TYPE 0x0C //!< Modify LUN entry. +#define MODIFY_LUN_TYPE 0x0C /* * ISP queue - modify LUN entry structure definition. */ -typedef struct -{ - uint8_t entry_type; /* Entry type. */ - uint8_t entry_count; /* Entry count. */ - uint8_t sys_define; /* System defined. */ - uint8_t entry_status; /* Entry Status. */ - uint32_t sys_define_2; /* System defined. */ +struct modify_lun_entry { + uint8_t entry_type; /* Entry type. */ + uint8_t entry_count; /* Entry count. */ + uint8_t sys_define; /* System defined. */ + uint8_t entry_status; /* Entry Status. */ + uint32_t sys_define_2; /* System defined. */ uint8_t reserved_8; uint8_t reserved_1; uint8_t operators; @@ -143,18 +143,18 @@ typedef struct uint32_t reserved_3; uint8_t status; uint8_t reserved_4; - uint8_t command_count; /* Number of ATIOs allocated. */ - uint8_t immed_notify_count; /* Number of Immediate Notify */ + uint8_t command_count; /* Number of ATIOs allocated. */ + uint8_t immed_notify_count; /* Number of Immediate Notify */ /* entries allocated. */ uint16_t reserved_5; - uint16_t timeout; /* 0 = 30 seconds, 0xFFFF = disable */ + uint16_t timeout; /* 0 = 30 seconds, 0xFFFF = disable */ uint16_t reserved_7[20]; -}modify_lun_entry_t; +}; #define MODIFY_LUN_SUCCESS 0x01 -#define MODIFY_LUN_CMD_ADD BIT_0 -#define MODIFY_LUN_CMD_SUB BIT_1 -#define MODIFY_LUN_IMM_ADD BIT_2 -#define MODIFY_LUN_IMM_SUB BIT_3 +#define MODIFY_LUN_CMD_ADD BIT_0 +#define MODIFY_LUN_CMD_SUB BIT_1 +#define MODIFY_LUN_IMM_ADD BIT_2 +#define MODIFY_LUN_IMM_SUB BIT_3 #endif @@ -163,17 +163,16 @@ typedef struct : (uint16_t)(iocb)->target.id.standard) #ifndef IMMED_NOTIFY_TYPE -#define IMMED_NOTIFY_TYPE 0x0D/* Immediate notify entry. */ +#define IMMED_NOTIFY_TYPE 0x0D /* Immediate notify entry. */ /* * ISP queue - immediate notify entry structure definition. */ -typedef struct -{ - uint8_t entry_type; /* Entry type. */ - uint8_t entry_count; /* Entry count. */ - uint8_t sys_define; /* System defined. */ - uint8_t entry_status; /* Entry Status. */ - uint32_t sys_define_2; /* System defined. */ +struct notify_entry { + uint8_t entry_type; /* Entry type. */ + uint8_t entry_count; /* Entry count. */ + uint8_t sys_define; /* System defined. */ + uint8_t entry_status; /* Entry Status. */ + uint32_t sys_define_2; /* System defined. */ target_id_t target; uint16_t lun; uint32_t reserved_2; @@ -184,21 +183,20 @@ typedef struct uint16_t scsi_status; uint8_t sense_data[16]; uint16_t ox_id; -}notify_entry_t; +}; #endif #ifndef NOTIFY_ACK_TYPE -#define NOTIFY_ACK_TYPE 0x0E /* Notify acknowledge entry. */ +#define NOTIFY_ACK_TYPE 0x0E /* Notify acknowledge entry. */ /* * ISP queue - notify acknowledge entry structure definition. */ -typedef struct -{ - uint8_t entry_type; /* Entry type. */ - uint8_t entry_count; /* Entry count. */ - uint8_t sys_define; /* System defined. */ - uint8_t entry_status; /* Entry Status. */ - uint32_t sys_define_2; /* System defined. */ +struct nack_entry { + uint8_t entry_type; /* Entry type. */ + uint8_t entry_count; /* Entry count. */ + uint8_t sys_define; /* System defined. */ + uint8_t entry_status; /* Entry Status. */ + uint32_t sys_define_2; /* System defined. */ target_id_t target; uint8_t reserved_1; uint8_t target_id; @@ -209,22 +207,21 @@ typedef struct uint16_t seq_id; uint16_t reserved_3[20]; uint16_t ox_id; -}nack_entry_t; -#define NOTIFY_ACK_SUCCESS 0x01 +}; +#define NOTIFY_ACK_SUCCESS 0x01 #endif #ifndef ACCEPT_TGT_IO_TYPE -#define ACCEPT_TGT_IO_TYPE 0x16 /* Accept target I/O entry. */ +#define ACCEPT_TGT_IO_TYPE 0x16 /* Accept target I/O entry. */ /* * ISP queue - Accept Target I/O (ATIO) entry structure definition. */ -typedef struct -{ - uint8_t entry_type; /* Entry type. */ - uint8_t entry_count; /* Entry count. */ - uint8_t sys_define; /* System defined. */ - uint8_t entry_status; /* Entry Status. */ - uint32_t sys_define_2; /* System defined. */ +struct atio_entry { + uint8_t entry_type; /* Entry type. */ + uint8_t entry_count; /* Entry count. */ + uint8_t sys_define; /* System defined. */ + uint8_t entry_status; /* Entry Status. */ + uint32_t sys_define_2; /* System defined. */ target_id_t target; uint16_t exchange_id; uint16_t flags; @@ -239,83 +236,80 @@ typedef struct uint8_t initiator_port_name[WWN_SIZE]; /* on qla23xx */ uint8_t reserved2[12]; uint16_t ox_id; -}atio_entry_t; +}; #endif #ifndef CONTINUE_TGT_IO_TYPE -#define CONTINUE_TGT_IO_TYPE 0x17 +#define CONTINUE_TGT_IO_TYPE 0x17 /* * ISP queue - Continue Target I/O (CTIO) entry for status mode 0 * structure definition. */ -typedef struct -{ - uint8_t entry_type; /* Entry type. */ - uint8_t entry_count; /* Entry count. */ - uint8_t sys_define; /* System defined. */ - uint8_t entry_status; /* Entry Status. */ - uint32_t handle; /* System defined handle */ +struct ctio_common_entry { + uint8_t entry_type; /* Entry type. */ + uint8_t entry_count; /* Entry count. */ + uint8_t sys_define; /* System defined. */ + uint8_t entry_status; /* Entry Status. */ + uint32_t handle; /* System defined handle */ target_id_t target; uint16_t exchange_id; uint16_t flags; uint16_t status; - uint16_t timeout; /* 0 = 30 seconds, 0xFFFF = disable */ - uint16_t dseg_count; /* Data segment count. */ + uint16_t timeout; /* 0 = 30 seconds, 0xFFFF = disable */ + uint16_t dseg_count; /* Data segment count. */ uint32_t relative_offset; uint32_t residual; uint16_t reserved_1[3]; uint16_t scsi_status; uint32_t transfer_length; uint32_t dseg_0_address[0]; -}ctio_common_entry_t; -#define ATIO_PATH_INVALID 0x07 -#define ATIO_CANT_PROV_CAP 0x16 -#define ATIO_CDB_VALID 0x3D +}; +#define ATIO_PATH_INVALID 0x07 +#define ATIO_CANT_PROV_CAP 0x16 +#define ATIO_CDB_VALID 0x3D -#define ATIO_EXEC_READ BIT_1 -#define ATIO_EXEC_WRITE BIT_0 +#define ATIO_EXEC_READ BIT_1 +#define ATIO_EXEC_WRITE BIT_0 #endif #ifndef CTIO_A64_TYPE -#define CTIO_A64_TYPE 0x1F -typedef struct -{ - ctio_common_entry_t common; - uint32_t dseg_0_address; /* Data segment 0 address. */ - uint32_t dseg_0_length; /* Data segment 0 length. */ - uint32_t dseg_1_address; /* Data segment 1 address. */ - uint32_t dseg_1_length; /* Data segment 1 length. */ - uint32_t dseg_2_address; /* Data segment 2 address. */ - uint32_t dseg_2_length; /* Data segment 2 length. */ -}ctio_entry_t; -#define CTIO_SUCCESS 0x01 -#define CTIO_ABORTED 0x02 -#define CTIO_INVALID_RX_ID 0x08 -#define CTIO_TIMEOUT 0x0B -#define CTIO_LIP_RESET 0x0E -#define CTIO_TARGET_RESET 0x17 -#define CTIO_PORT_UNAVAILABLE 0x28 -#define CTIO_PORT_LOGGED_OUT 0x29 +#define CTIO_A64_TYPE 0x1F +struct ctio_entry { + struct ctio_common_entry common; + uint32_t dseg_0_address; /* Data segment 0 address. */ + uint32_t dseg_0_length; /* Data segment 0 length. */ + uint32_t dseg_1_address; /* Data segment 1 address. */ + uint32_t dseg_1_length; /* Data segment 1 length. */ + uint32_t dseg_2_address; /* Data segment 2 address. */ + uint32_t dseg_2_length; /* Data segment 2 length. */ +}; +#define CTIO_SUCCESS 0x01 +#define CTIO_ABORTED 0x02 +#define CTIO_INVALID_RX_ID 0x08 +#define CTIO_TIMEOUT 0x0B +#define CTIO_LIP_RESET 0x0E +#define CTIO_TARGET_RESET 0x17 +#define CTIO_PORT_UNAVAILABLE 0x28 +#define CTIO_PORT_LOGGED_OUT 0x29 #endif #ifndef CTIO_RET_TYPE -#define CTIO_RET_TYPE 0x17 /* CTIO return entry */ +#define CTIO_RET_TYPE 0x17 /* CTIO return entry */ /* * ISP queue - CTIO returned entry structure definition. */ -typedef struct -{ - uint8_t entry_type; /* Entry type. */ - uint8_t entry_count; /* Entry count. */ - uint8_t sys_define; /* System defined. */ - uint8_t entry_status; /* Entry Status. */ - uint32_t handle; /* System defined handle. */ +struct ctio_ret_entry { + uint8_t entry_type; /* Entry type. */ + uint8_t entry_count; /* Entry count. */ + uint8_t sys_define; /* System defined. */ + uint8_t entry_status; /* Entry Status. */ + uint32_t handle; /* System defined handle. */ target_id_t target; uint16_t exchange_id; uint16_t flags; uint16_t status; - uint16_t timeout; /* 0 = 30 seconds, 0xFFFF = disable */ - uint16_t dseg_count; /* Data segment count. */ + uint16_t timeout; /* 0 = 30 seconds, 0xFFFF = disable */ + uint16_t dseg_count; /* Data segment count. */ uint32_t relative_offset; uint32_t residual; uint16_t reserved_1[2]; @@ -323,31 +317,31 @@ typedef struct uint16_t scsi_status; uint16_t response_length; uint8_t sense_data[26]; -}ctio_ret_entry_t; +}; #endif /********************************************************************\ * Type Definitions used by initiator & target halves \********************************************************************/ -typedef enum { +enum qla2x_tgt_host_action { DISABLE_TARGET_MODE = 0, ENABLE_TARGET_MODE = 1 -} qla2x_tgt_host_action_t; +}; -struct qla2x_tgt_initiator -{ +struct qla2x_tgt_initiator { int magic; /* Callbacks */ void (*tgt_response_pkt)(scsi_qla_host_t *ha, sts_entry_t *pkt); void (*tgt_ctio_completion)(scsi_qla_host_t *ha, uint32_t handle); - void (*tgt_async_event)(uint16_t code, scsi_qla_host_t *ha, uint16_t *mailbox); - void (*tgt_host_action)(scsi_qla_host_t *ha, qla2x_tgt_host_action_t action); + void (*tgt_async_event)(uint16_t code, scsi_qla_host_t *ha, + uint16_t *mailbox); + void (*tgt_host_action)(scsi_qla_host_t *ha, + enum qla2x_tgt_host_action action); }; -struct qla2x_tgt_target -{ +struct qla2x_tgt_target { int magic; /* Callbacks - H/W lock MUST be held while calling any */ diff --git a/scst_local/scst_local.c b/scst_local/scst_local.c index b5ea88956..2acb466a5 100644 --- a/scst_local/scst_local.c +++ b/scst_local/scst_local.c @@ -680,7 +680,7 @@ static struct scsi_host_template scst_lcl_ini_driver_template = { .eh_target_reset_handler = scst_local_target_reset, #endif .can_queue = 256, - .this_id = SCST_LOCAL_MAX_TARGETS, + .this_id = SCST_LOCAL_MAX_TARGETS, /* SCST doesn't support sg chaining */ .sg_tablesize = SCSI_MAX_SG_SEGMENTS, .cmd_per_lun = 32,