13 #include <linux/slab.h>
14 #include <linux/list.h>
41 "vp_id %d is bigger than max-supported %d.\n",
67 unsigned long flags = 0;
141 "Marking port dead, loop_id=0x%04x : %x.\n",
162 spin_unlock_irqrestore(&vha->
hw->vport_slock, flags);
164 qla2x00_mark_vp_devices_dead(vha);
166 vha->
flags.management_server_logged_in = 0;
203 "Virtual port with id: %d - Enabled.\n", vha->
vp_idx);
208 "Virtual port with id: %d - Disabled.\n", vha->
vp_idx);
221 "%s: change request #3.\n", __func__);
225 "receiving of RSCN requests: 0x%x.\n", ret);
232 vha->
flags.online = 1;
264 "Async_event for VP[%d], mb=0x%x vha=%p.\n",
302 "Scheduling enable of Vport %d.\n", vha->
vp_idx);
310 "Entering %s vp_flags: 0x%lx.\n", __func__, vha->
vp_flags);
317 "Configure VP scheduled.\n");
318 qla24xx_configure_vp(vha);
320 "Configure VP end.\n");
326 "FCPort update scheduled.\n");
330 "FCPort update end.\n");
338 "Relogin needed scheduled.\n");
341 "Relogin needed end.\n");
352 "Loop resync scheduled.\n");
356 "Loop resync end.\n");
361 "Exiting %s.\n", __func__);
371 unsigned long flags = 0;
389 ret = qla2x00_do_dpc_vp(vp);
410 if (!ha->
flags.npiv_supported)
418 u64_to_wwn(fc_vport->
port_name, port_name);
421 vha = qla24xx_find_vhost_by_name(ha, port_name);
428 "num_vhosts %ud is bigger "
429 "than max_npiv_vports %ud.\n",
448 "scsi_host_alloc() failed for vport.\n");
460 vha->
vp_idx = qla24xx_allocate_vp_id(vha);
463 "Couldn't allocate vp_id.\n");
464 goto create_vhost_failed;
494 "Detect vport hba %ld at address = %p.\n",
497 vha->
flags.init_done = 1;
536 if (rsp->
msix && rsp->
msix->have_irq) {
538 rsp->
msix->have_irq = 0;
565 qla25xx_free_req_que(vha, req);
580 qla25xx_free_rsp_que(vha, rsp);
601 "Couldn't delete req que %d.\n",
612 ret = qla25xx_delete_rsp_que(vha, rsp);
615 "Couldn't delete rsp que %d.\n",
638 "Failed to allocate memory for request queue.\n");
648 "Failed to allocate memory for request_ring.\n");
657 "No resources to create additional request queue.\n");
667 "queue_id=%d rid=%d vp_idx=%d qos=%d.\n",
670 "queue_id=%d rid=%d vp_idx=%d qos=%d.\n",
685 "options=0x%x.\n", req->
options);
687 "options=0x%x.\n", req->
options);
700 "ring_ptr=%p ring_index=%d, "
701 "cnt=%d id=%d max_q_depth=%d.\n",
705 "ring_ptr=%p ring_index=%d, "
706 "cnt=%d id=%d max_q_depth=%d.\n",
713 "%s failed.\n", __func__);
723 qla25xx_free_req_que(base_vha, req);
736 vha = pci_get_drvdata(ha->
pdev);
738 spin_unlock_irqrestore(&rsp->
hw->hardware_lock, flags);
755 "Failed to allocate memory for response queue.\n");
765 "Failed to allocate memory for response ring.\n");
774 "No resources to create additional request queue.\n");
779 if (ha->
flags.msix_enabled)
783 "MSIX not enalbled.\n");
790 "queue_id=%d rid=%d vp_idx=%d hw=%p.\n",
805 rsp->
rsp_q_in = ®->isp25mq.rsp_q_in;
806 rsp->
rsp_q_out = ®->isp25mq.rsp_q_out;
809 "options=%x id=%d rsp_q_in=%p rsp_q_out=%p",
813 "options=%x id=%d rsp_q_in=%p rsp_q_out=%p",
824 "%s failed.\n", __func__);
841 qla25xx_free_rsp_que(base_vha, rsp);