From f1463d0606d7ede1ba8c6ba1abd5c54fce4b0c7b Mon Sep 17 00:00:00 2001 From: Bart Van Assche Date: Wed, 8 Aug 2018 04:13:42 +0000 Subject: [PATCH 1/2] scst: Leave a blank line after declarations git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@7466 d57e44dd-8a1f-0410-8b47-8ef2f437770f --- scst/src/dev_handlers/scst_vdisk.c | 2 ++ scst/src/scst_lib.c | 4 ++++ scst/src/scst_mem.c | 3 +++ scst/src/scst_targ.c | 3 +++ 4 files changed, 12 insertions(+) diff --git a/scst/src/dev_handlers/scst_vdisk.c b/scst/src/dev_handlers/scst_vdisk.c index 0a04839be..7af89680b 100644 --- a/scst/src/dev_handlers/scst_vdisk.c +++ b/scst/src/dev_handlers/scst_vdisk.c @@ -6621,6 +6621,7 @@ static void blockio_endio(struct bio *bio) #endif if (error == -ENOSPC) { struct scst_vdisk_dev *virt_dev = blockio_work->cmd->dev->dh_priv; + WARN_ON(!virt_dev->thin_provisioned); scst_set_cmd_error(blockio_work->cmd, SCST_LOAD_SENSE(scst_space_allocation_failed_write_protect)); @@ -8025,6 +8026,7 @@ static void vdev_check_node(struct scst_vdisk_dev **pvirt_dev, int orig_nodeid) if (virt_dev->numa_node_id != orig_nodeid) { struct scst_vdisk_dev *v; + TRACE_MEM("Realloc virt_dev %s on node %d", virt_dev->name, nodeid); /* It's read-mostly, so cache alignment isn't needed */ v = kzalloc_node(sizeof(*v), GFP_KERNEL, nodeid); diff --git a/scst/src/scst_lib.c b/scst/src/scst_lib.c index 354088812..a4848be69 100644 --- a/scst/src/scst_lib.c +++ b/scst/src/scst_lib.c @@ -13901,6 +13901,7 @@ int scst_get_max_lun_commands(struct scst_session *sess, uint64_t lun) if (sess == NULL) { struct scst_device *dev; + list_for_each_entry(dev, &scst_dev_list, dev_list_entry) { if (dev->handler == &scst_null_devtype) continue; @@ -13916,6 +13917,7 @@ int scst_get_max_lun_commands(struct scst_session *sess, uint64_t lun) struct list_head *head = &sess->sess_tgt_dev_list[SESS_TGT_DEV_LIST_HASH_FN(lun)]; struct scst_tgt_dev *tgt_dev; + list_for_each_entry(tgt_dev, head, sess_tgt_dev_list_entry) { if (tgt_dev->lun == lun) { res = tgt_dev->dev->max_tgt_dev_commands; @@ -13931,6 +13933,7 @@ int scst_get_max_lun_commands(struct scst_session *sess, uint64_t lun) for (i = 0; i < SESS_TGT_DEV_LIST_HASH_SIZE; i++) { struct list_head *head = &sess->sess_tgt_dev_list[i]; struct scst_tgt_dev *tgt_dev; + list_for_each_entry(tgt_dev, head, sess_tgt_dev_list_entry) { if (res > tgt_dev->dev->max_tgt_dev_commands) res = tgt_dev->dev->max_tgt_dev_commands; @@ -15841,6 +15844,7 @@ void scst_update_lat_stats(struct scst_cmd *cmd) if (unlikely((scst_time < 0) || (tgt_time < 0) || (dev_time < 0))) { /* It might happen due to small difference in time between CPUs */ static int q; + if (q++ < 20) { PRINT_WARNING("Ignoring max latency sample, because time is " "moving backward (cmd %p, scst %lld, tgt %lld, " diff --git a/scst/src/scst_mem.c b/scst/src/scst_mem.c index 7d827d861..ce88fbf1e 100644 --- a/scst/src/scst_mem.c +++ b/scst/src/scst_mem.c @@ -1788,6 +1788,7 @@ int scst_sgv_pools_init(unsigned long mem_hwmark, unsigned long mem_lwmark) for (i = 0; i < NR_CPUS; i++) { char name[60]; + if (!cpu_online(i)) continue; scnprintf(name, sizeof(name), "sgv-%d", i); @@ -1799,6 +1800,7 @@ int scst_sgv_pools_init(unsigned long mem_hwmark, unsigned long mem_lwmark) for (i = 0; i < NR_CPUS; i++) { char name[60]; + if (!cpu_online(i)) continue; scnprintf(name, sizeof(name), "sgv-clust-%d", i); @@ -1810,6 +1812,7 @@ int scst_sgv_pools_init(unsigned long mem_hwmark, unsigned long mem_lwmark) for (i = 0; i < NR_CPUS; i++) { char name[60]; + if (!cpu_online(i)) continue; scnprintf(name, sizeof(name), "sgv-dma-%d", i); diff --git a/scst/src/scst_targ.c b/scst/src/scst_targ.c index 58056823c..22a0355ee 100644 --- a/scst/src/scst_targ.c +++ b/scst/src/scst_targ.c @@ -4468,6 +4468,7 @@ again: } } else if (likely(cmd->tgt_dev != NULL)) { struct scst_order_data *order_data = cmd->cur_order_data; + if (unlikely(order_data->aca_tgt_dev != 0)) { if (!cmd->cmd_aca_allowed) { spin_lock_irq(&order_data->sn_lock); @@ -4504,6 +4505,7 @@ again: if (unlikely(cmd->queue_type == SCST_CMD_QUEUE_ACA) && (cmd->tgt_dev != NULL)) { struct scst_order_data *order_data = cmd->cur_order_data; + spin_lock_irq(&order_data->sn_lock); if (order_data->aca_cmd == cmd) { TRACE_MGMT_DBG("ACA cmd %p finished", cmd); @@ -7196,6 +7198,7 @@ static void __scst_clear_aca(struct scst_tgt_dev *tgt_dev, aca_cmd = order_data->aca_cmd; if (aca_cmd != NULL) { unsigned long flags; + TRACE_MGMT_DBG("Aborting pending ACA cmd %p", aca_cmd); spin_lock_irqsave(&aca_cmd->sess->sess_list_lock, flags); scst_abort_cmd(aca_cmd, mcmd, other_ini, (mcmd != NULL)); From 546c6c6ebec6c2c37e24540fffa434fcb07d5ffc Mon Sep 17 00:00:00 2001 From: Bart Van Assche Date: Wed, 8 Aug 2018 04:14:54 +0000 Subject: [PATCH 2/2] qla2x00t: Various coding style fixes This patch does not change any functionality. git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@7467 d57e44dd-8a1f-0410-8b47-8ef2f437770f --- qla2x00t/qla_attr.c | 2 ++ qla2x00t/qla_gs.c | 1 + qla2x00t/qla_init.c | 3 ++- qla2x00t/qla_iocb.c | 2 +- qla2x00t/qla_isr.c | 3 +-- qla2x00t/qla_mbx.c | 3 +++ qla2x00t/qla_nx.c | 1 + qla2x00t/qla_os.c | 3 +++ 8 files changed, 14 insertions(+), 4 deletions(-) diff --git a/qla2x00t/qla_attr.c b/qla2x00t/qla_attr.c index d775ad098..9fdb3770f 100644 --- a/qla2x00t/qla_attr.c +++ b/qla2x00t/qla_attr.c @@ -158,6 +158,7 @@ qla2x00_store_tgt_enabled(struct device *dev, if ((size > 1) && (buffer[1] == 'r')) { struct scsi_qla_host *base_vha = pci_get_drvdata(vha->hw->pdev); + set_bit(ISP_ABORT_NEEDED, &base_vha->dpc_flags); } @@ -375,6 +376,7 @@ qla2x00_show_port_database(struct device *dev, for (i = 0; (i < entries) && (size < max_size); ++i) { uint64_t *wwn = (uint64_t *)pmap24[i].port_name; + if (*wwn == 0) continue; size += scnprintf(buffer+size, max_size-size, diff --git a/qla2x00t/qla_gs.c b/qla2x00t/qla_gs.c index d8846e82f..d794e55df 100644 --- a/qla2x00t/qla_gs.c +++ b/qla2x00t/qla_gs.c @@ -1801,6 +1801,7 @@ qla24xx_prep_ms_fm_iocb(scsi_qla_host_t *vha, uint32_t req_size, { struct ct_entry_24xx *ct_pkt; struct qla_hw_data *ha = vha->hw; + ct_pkt = (struct ct_entry_24xx *)ha->ms_iocb; memset(ct_pkt, 0, sizeof(struct ct_entry_24xx)); diff --git a/qla2x00t/qla_init.c b/qla2x00t/qla_init.c index e69c774f7..c7542dd5b 100644 --- a/qla2x00t/qla_init.c +++ b/qla2x00t/qla_init.c @@ -109,6 +109,7 @@ qla2x00_async_iocb_timeout(void *data) fcport->flags &= ~FCF_ASYNC_SENT; if (sp->type == SRB_LOGIN_CMD) { struct srb_iocb *lio = &sp->u.iocb_cmd; + qla2x00_post_async_logout_work(fcport->vha, fcport, NULL); /* Retry as needed. */ lio->u.logio.data[0] = MBS_COMMAND_ERROR; @@ -2027,7 +2028,7 @@ qla2x00_fw_ready(scsi_qla_host_t *vha) } while (1); ql_dbg(ql_dbg_taskm, vha, 0x803a, - "fw_state=%x (%x, %x, %x, %x) " "curr time=%lx.\n", state[0], + "fw_state=%x (%x, %x, %x, %x) curr time=%lx.\n", state[0], state[1], state[2], state[3], state[4], jiffies); out_not_ready: diff --git a/qla2x00t/qla_iocb.c b/qla2x00t/qla_iocb.c index a6c285f50..37e0bdbd9 100644 --- a/qla2x00t/qla_iocb.c +++ b/qla2x00t/qla_iocb.c @@ -1166,7 +1166,7 @@ qla24xx_walk_and_build_sglist(struct qla_hw_data *ha, srb_t *sp, uint32_t *dsd, } sle_dma = sg_dma_address(sg); ql_dbg(ql_dbg_io, vha, 0x300a, - "sg entry %d - addr=0x%x 0x%x, " "len=%d for cmd=%p.\n", + "sg entry %d - addr=0x%x 0x%x, len=%d for cmd=%p.\n", i, LSD(sle_dma), MSD(sle_dma), sg_dma_len(sg), cmd); *cur_dsd++ = cpu_to_le32(LSD(sle_dma)); *cur_dsd++ = cpu_to_le32(MSD(sle_dma)); diff --git a/qla2x00t/qla_isr.c b/qla2x00t/qla_isr.c index 070c9287a..bc5b4bf0e 100644 --- a/qla2x00t/qla_isr.c +++ b/qla2x00t/qla_isr.c @@ -1232,8 +1232,7 @@ qla24xx_els_ct_entry(scsi_qla_host_t *vha, struct req_que *req, fw_sts_ptr = bsg_job_sense(bsg_job) + sizeof(struct fc_bsg_reply); memcpy(fw_sts_ptr, fw_status, sizeof(fw_status)); - } - else { + } else { ql_dbg(ql_dbg_user, vha, 0x5040, "ELS-CT pass-through-%s error hdl=%x comp_status-status=0x%x " "error subcode 1=0x%x error subcode 2=0x%x.\n", diff --git a/qla2x00t/qla_mbx.c b/qla2x00t/qla_mbx.c index c5ede1abb..e674a9675 100644 --- a/qla2x00t/qla_mbx.c +++ b/qla2x00t/qla_mbx.c @@ -1209,6 +1209,7 @@ qla2x00_init_firmware(scsi_qla_host_t *vha, uint16_t size) #if 0 if (IS_FWI2_CAPABLE(ha)) { struct init_cb_24xx *icb = (struct init_cb_24xx *)ha->init_cb; + DEBUG5(printk(KERN_INFO "%s(): firmware_options_1 %x, " "firmware_options_2 %x, firmware_options_3 %x\n", __func__, icb->firmware_options_1, @@ -1217,6 +1218,7 @@ qla2x00_init_firmware(scsi_qla_host_t *vha, uint16_t size) DEBUG5(qla2x00_dump_buffer((uint8_t *)icb, sizeof(*icb))); } else { init_cb_t *icb = (init_cb_t *)ha->init_cb; + DEBUG5(printk(KERN_INFO "%s(): firmware_options[0] %x, " "firmware_options[1] %x, add_firmware_options[0] %x, " "add_firmware_options[1] %x\n", __func__, @@ -1266,6 +1268,7 @@ qla2x00_init_firmware(scsi_qla_host_t *vha, uint16_t size) if (ha->flags.npiv_supported && (ha->num_vhosts > 0)) { scsi_qla_host_t *vha; + list_for_each_entry(vha, &ha->vp_list, list) { struct mid_conf_entry_24xx *vpe; diff --git a/qla2x00t/qla_nx.c b/qla2x00t/qla_nx.c index 0f49375d5..b8e532c8b 100644 --- a/qla2x00t/qla_nx.c +++ b/qla2x00t/qla_nx.c @@ -3409,6 +3409,7 @@ int qla82xx_load_risc(scsi_qla_host_t *vha, uint32_t *srisc_addr) { int rval; + rval = qla82xx_device_state_handler(vha); return rval; } diff --git a/qla2x00t/qla_os.c b/qla2x00t/qla_os.c index 9cb2bdc6b..a565b8719 100644 --- a/qla2x00t/qla_os.c +++ b/qla2x00t/qla_os.c @@ -2285,6 +2285,7 @@ qla2xxx_add_targets(void) for_each_mapped_vp_idx(base_vha, i) { scsi_qla_host_t *vha; + list_for_each_entry(vha, &base_vha->hw->vp_list, list) { if (i == vha->vp_idx) { qla_target.tgt_host_action(vha, ADD_TARGET); @@ -2316,6 +2317,7 @@ size_t qla2xxx_add_vtarget(u64 port_name, u64 node_name, u64 parent_host) mutex_lock(&qla_ha_list_mutex); list_for_each_entry(ha, &qla_ha_list, ha_list_entry) { scsi_qla_host_t *base_vha = pci_get_drvdata(ha->pdev); + if (!memcmp(parent_wwn, base_vha->port_name_set ? base_vha->hw->orig_hw_port_name : base_vha->port_name, @@ -2355,6 +2357,7 @@ size_t qla2xxx_del_vtarget(u64 port_name) mutex_lock(&qla_ha_list_mutex); list_for_each_entry(ha, &qla_ha_list, ha_list_entry) { scsi_qla_host_t *base_vha = pci_get_drvdata(ha->pdev); + shost = base_vha->host; fc_host = shost_to_fc_host(shost); spin_lock_irqsave(shost->host_lock, flags);