diff options
Diffstat (limited to 'drivers/scsi/qla2xxx/qla_os.c')
| -rw-r--r-- | drivers/scsi/qla2xxx/qla_os.c | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/drivers/scsi/qla2xxx/qla_os.c b/drivers/scsi/qla2xxx/qla_os.c index a28815b8276f..8a5cac8448c7 100644 --- a/drivers/scsi/qla2xxx/qla_os.c +++ b/drivers/scsi/qla2xxx/qla_os.c | |||
| @@ -2504,6 +2504,7 @@ qla2x00_probe_one(struct pci_dev *pdev, const struct pci_device_id *id) | |||
| 2504 | ha->mbx_count = MAILBOX_REGISTER_COUNT; | 2504 | ha->mbx_count = MAILBOX_REGISTER_COUNT; |
| 2505 | req_length = REQUEST_ENTRY_CNT_24XX; | 2505 | req_length = REQUEST_ENTRY_CNT_24XX; |
| 2506 | rsp_length = RESPONSE_ENTRY_CNT_2300; | 2506 | rsp_length = RESPONSE_ENTRY_CNT_2300; |
| 2507 | ha->tgt.atio_q_length = ATIO_ENTRY_CNT_24XX; | ||
| 2507 | ha->max_loop_id = SNS_LAST_LOOP_ID_2300; | 2508 | ha->max_loop_id = SNS_LAST_LOOP_ID_2300; |
| 2508 | ha->init_cb_size = sizeof(struct mid_init_cb_81xx); | 2509 | ha->init_cb_size = sizeof(struct mid_init_cb_81xx); |
| 2509 | ha->gid_list_info_size = 8; | 2510 | ha->gid_list_info_size = 8; |
| @@ -3229,11 +3230,15 @@ qla2x00_schedule_rport_del(struct scsi_qla_host *vha, fc_port_t *fcport, | |||
| 3229 | spin_lock_irqsave(vha->host->host_lock, flags); | 3230 | spin_lock_irqsave(vha->host->host_lock, flags); |
| 3230 | fcport->drport = rport; | 3231 | fcport->drport = rport; |
| 3231 | spin_unlock_irqrestore(vha->host->host_lock, flags); | 3232 | spin_unlock_irqrestore(vha->host->host_lock, flags); |
| 3233 | qlt_do_generation_tick(vha, &base_vha->total_fcport_update_gen); | ||
| 3232 | set_bit(FCPORT_UPDATE_NEEDED, &base_vha->dpc_flags); | 3234 | set_bit(FCPORT_UPDATE_NEEDED, &base_vha->dpc_flags); |
| 3233 | qla2xxx_wake_dpc(base_vha); | 3235 | qla2xxx_wake_dpc(base_vha); |
| 3234 | } else { | 3236 | } else { |
| 3235 | fc_remote_port_delete(rport); | 3237 | int now; |
| 3236 | qlt_fc_port_deleted(vha, fcport); | 3238 | if (rport) |
| 3239 | fc_remote_port_delete(rport); | ||
| 3240 | qlt_do_generation_tick(vha, &now); | ||
| 3241 | qlt_fc_port_deleted(vha, fcport, now); | ||
| 3237 | } | 3242 | } |
| 3238 | } | 3243 | } |
| 3239 | 3244 | ||
| @@ -3763,8 +3768,11 @@ struct scsi_qla_host *qla2x00_create_host(struct scsi_host_template *sht, | |||
| 3763 | INIT_LIST_HEAD(&vha->vp_fcports); | 3768 | INIT_LIST_HEAD(&vha->vp_fcports); |
| 3764 | INIT_LIST_HEAD(&vha->work_list); | 3769 | INIT_LIST_HEAD(&vha->work_list); |
| 3765 | INIT_LIST_HEAD(&vha->list); | 3770 | INIT_LIST_HEAD(&vha->list); |
| 3771 | INIT_LIST_HEAD(&vha->qla_cmd_list); | ||
| 3772 | INIT_LIST_HEAD(&vha->qla_sess_op_cmd_list); | ||
| 3766 | 3773 | ||
| 3767 | spin_lock_init(&vha->work_lock); | 3774 | spin_lock_init(&vha->work_lock); |
| 3775 | spin_lock_init(&vha->cmd_list_lock); | ||
| 3768 | 3776 | ||
| 3769 | sprintf(vha->host_str, "%s_%ld", QLA2XXX_DRIVER_NAME, vha->host_no); | 3777 | sprintf(vha->host_str, "%s_%ld", QLA2XXX_DRIVER_NAME, vha->host_no); |
| 3770 | ql_dbg(ql_dbg_init, vha, 0x0041, | 3778 | ql_dbg(ql_dbg_init, vha, 0x0041, |
