Lines Matching refs:qedf
11 void qedf_cmd_timer_set(struct qedf_ctx *qedf, struct qedf_ioreq *io_req, in qedf_cmd_timer_set() argument
14 queue_delayed_work(qedf->timer_work_queue, &io_req->timeout_work, in qedf_cmd_timer_set()
23 struct qedf_ctx *qedf; in qedf_cmd_timeout() local
32 qedf = fcport->qedf; in qedf_cmd_timeout()
36 if (qedf == NULL) { in qedf_cmd_timeout()
43 QEDF_ERR((&qedf->dbg_ctx), "ABTS timeout, xid=0x%x.\n", in qedf_cmd_timeout()
66 if (!qedf) { in qedf_cmd_timeout()
81 QEDF_ERR(&(qedf->dbg_ctx), "ELS timeout, xid=0x%x.\n", in qedf_cmd_timeout()
93 QEDF_ERR(&(qedf->dbg_ctx), "Sequence cleanup timeout, " in qedf_cmd_timeout()
97 qedf_process_seq_cleanup_compl(qedf, NULL, io_req); in qedf_cmd_timeout()
100 QEDF_INFO(&qedf->dbg_ctx, QEDF_LOG_IO, in qedf_cmd_timeout()
109 struct qedf_ctx *qedf = cmgr->qedf; in qedf_cmd_mgr_free() local
121 QEDF_ERR(&qedf->dbg_ctx, "io_bdt_pool is NULL.\n"); in qedf_cmd_mgr_free()
129 dma_free_coherent(&qedf->pdev->dev, bd_tbl_sz, in qedf_cmd_mgr_free()
152 dma_free_coherent(&qedf->pdev->dev, in qedf_cmd_mgr_free()
172 struct qedf_cmd_mgr *qedf_cmd_mgr_alloc(struct qedf_ctx *qedf) in qedf_cmd_mgr_alloc() argument
184 if (!qedf->num_queues) { in qedf_cmd_mgr_alloc()
185 QEDF_ERR(&(qedf->dbg_ctx), "num_queues is not set.\n"); in qedf_cmd_mgr_alloc()
190 QEDF_WARN(&(qedf->dbg_ctx), "Invalid min_xid 0x%x and " in qedf_cmd_mgr_alloc()
195 QEDF_INFO(&(qedf->dbg_ctx), QEDF_LOG_DISC, "min xid 0x%x, max xid " in qedf_cmd_mgr_alloc()
202 QEDF_WARN(&(qedf->dbg_ctx), "Failed to alloc cmd mgr.\n"); in qedf_cmd_mgr_alloc()
206 cmgr->qedf = qedf; in qedf_cmd_mgr_alloc()
223 io_req->sense_buffer = dma_alloc_coherent(&qedf->pdev->dev, in qedf_cmd_mgr_alloc()
227 QEDF_ERR(&qedf->dbg_ctx, in qedf_cmd_mgr_alloc()
236 QEDF_ERR(&(qedf->dbg_ctx), in qedf_cmd_mgr_alloc()
249 QEDF_ERR(&(qedf->dbg_ctx), in qedf_cmd_mgr_alloc()
261 QEDF_WARN(&(qedf->dbg_ctx), "Failed to alloc io_bdt_pool.\n"); in qedf_cmd_mgr_alloc()
269 QEDF_WARN(&(qedf->dbg_ctx), in qedf_cmd_mgr_alloc()
277 bdt_info->bd_tbl = dma_alloc_coherent(&qedf->pdev->dev, in qedf_cmd_mgr_alloc()
281 QEDF_WARN(&(qedf->dbg_ctx), in qedf_cmd_mgr_alloc()
287 QEDF_INFO(&(qedf->dbg_ctx), QEDF_LOG_IO, in qedf_cmd_mgr_alloc()
300 struct qedf_ctx *qedf = fcport->qedf; in qedf_alloc_cmd() local
301 struct qedf_cmd_mgr *cmd_mgr = qedf->cmd_mgr; in qedf_alloc_cmd()
312 QEDF_INFO(&(qedf->dbg_ctx), QEDF_LOG_IO, in qedf_alloc_cmd()
321 QEDF_INFO(&(qedf->dbg_ctx), QEDF_LOG_IO, in qedf_alloc_cmd()
329 QEDF_INFO(&(qedf->dbg_ctx), QEDF_LOG_IO, in qedf_alloc_cmd()
353 QEDF_ERR(&qedf->dbg_ctx, in qedf_alloc_cmd()
382 QEDF_ERR(&(qedf->dbg_ctx), "bd_tbl is NULL, xid=%x.\n", xid); in qedf_alloc_cmd()
399 qedf->alloc_failures++; in qedf_alloc_cmd()
406 struct qedf_ctx *qedf = io_req->fcport->qedf; in qedf_free_mp_resc() local
411 dma_free_coherent(&qedf->pdev->dev, sz, in qedf_free_mp_resc()
416 dma_free_coherent(&qedf->pdev->dev, sz, in qedf_free_mp_resc()
421 dma_free_coherent(&qedf->pdev->dev, QEDF_PAGE_SIZE, in qedf_free_mp_resc()
426 dma_free_coherent(&qedf->pdev->dev, QEDF_PAGE_SIZE, in qedf_free_mp_resc()
441 QEDF_WARN(&fcport->qedf->dbg_ctx, in qedf_release_cmd()
455 QEDF_WARN(&(fcport->qedf->dbg_ctx), "active_ios < 0.\n"); in qedf_release_cmd()
476 struct qedf_ctx *qedf = lport_priv(lport); in qedf_map_sg() local
486 sg_count = dma_map_sg(&qedf->pdev->dev, scsi_sglist(sc), in qedf_map_sg()
521 QEDF_ERR(&(qedf->dbg_ctx), "byte_count = %d != " in qedf_map_sg()
596 struct qedf_ctx *qedf = fcport->qedf; in qedf_init_task() local
597 uint16_t cq_idx = smp_processor_id() % qedf->num_queues; in qedf_init_task()
671 qedf->slow_sge_ios++; in qedf_init_task()
673 qedf->fast_sge_ios++; in qedf_init_task()
681 struct qedf_ctx *qedf = io_req->fcport->qedf; in qedf_init_mp_task() local
687 QEDF_INFO(&(qedf->dbg_ctx), QEDF_LOG_DISC, in qedf_init_mp_task()
691 qedf->control_requests++; in qedf_init_mp_task()
803 struct qedf_ctx *qedf = fcport->qedf; in qedf_trace_io() local
808 spin_lock_irqsave(&qedf->io_trace_lock, flags); in qedf_trace_io()
810 io_log = &qedf->io_trace_buf[qedf->io_trace_idx]; in qedf_trace_io()
839 qedf->io_trace_idx++; in qedf_trace_io()
840 if (qedf->io_trace_idx == QEDF_IO_TRACE_SIZE) in qedf_trace_io()
841 qedf->io_trace_idx = 0; in qedf_trace_io()
843 spin_unlock_irqrestore(&qedf->io_trace_lock, flags); in qedf_trace_io()
851 struct qedf_ctx *qedf = lport_priv(lport); in qedf_post_io_req() local
867 qedf->input_requests++; in qedf_post_io_req()
870 qedf->output_requests++; in qedf_post_io_req()
873 qedf->control_requests++; in qedf_post_io_req()
880 QEDF_ERR(&(qedf->dbg_ctx), "BD list creation failed.\n"); in qedf_post_io_req()
889 QEDF_ERR(&(qedf->dbg_ctx), "Session not offloaded yet.\n"); in qedf_post_io_req()
905 task_ctx = qedf_get_task_mem(&qedf->tasks, xid); in qedf_post_io_req()
907 QEDF_WARN(&(qedf->dbg_ctx), "task_ctx is NULL, xid=%d.\n", in qedf_post_io_req()
933 struct qedf_ctx *qedf = lport_priv(lport); in qedf_queuecommand() local
945 QEDF_ERR(&qedf->dbg_ctx, in qedf_queuecommand()
953 if (test_bit(QEDF_UNLOADING, &qedf->flags) || in qedf_queuecommand()
954 test_bit(QEDF_DBG_STOP_IO, &qedf->flags)) { in qedf_queuecommand()
955 QEDF_INFO(&qedf->dbg_ctx, QEDF_LOG_IO, in qedf_queuecommand()
957 qedf->flags); in qedf_queuecommand()
963 if (!qedf->pdev->msix_enabled) { in qedf_queuecommand()
964 QEDF_INFO(&(qedf->dbg_ctx), QEDF_LOG_IO, in qedf_queuecommand()
974 QEDF_INFO(&qedf->dbg_ctx, QEDF_LOG_IO, in qedf_queuecommand()
983 if (test_bit(QEDF_DRAIN_ACTIVE, &qedf->flags)) { in qedf_queuecommand()
984 QEDF_INFO(&qedf->dbg_ctx, QEDF_LOG_IO, "Drain active.\n"); in qedf_queuecommand()
990 atomic_read(&qedf->link_state) != QEDF_LINK_UP) { in qedf_queuecommand()
991 QEDF_INFO(&qedf->dbg_ctx, QEDF_LOG_IO, "Link down.\n"); in qedf_queuecommand()
1038 QEDF_WARN(&(qedf->dbg_ctx), "Unable to post io_req\n"); in qedf_queuecommand()
1054 struct qedf_ctx *qedf = io_req->fcport->qedf; in qedf_parse_fcp_rsp() local
1085 QEDF_INFO(&(qedf->dbg_ctx), QEDF_LOG_IO, in qedf_parse_fcp_rsp()
1092 QEDF_INFO(&(qedf->dbg_ctx), QEDF_LOG_IO, in qedf_parse_fcp_rsp()
1106 static void qedf_unmap_sg_list(struct qedf_ctx *qedf, struct qedf_ioreq *io_req) in qedf_unmap_sg_list() argument
1111 dma_unmap_sg(&qedf->pdev->dev, scsi_sglist(sc), in qedf_unmap_sg_list()
1117 void qedf_scsi_completion(struct qedf_ctx *qedf, struct fcoe_cqe *cqe, in qedf_scsi_completion() argument
1137 QEDF_ERR(&qedf->dbg_ctx, in qedf_scsi_completion()
1147 QEDF_WARN(&(qedf->dbg_ctx), "sc_cmd is NULL!\n"); in qedf_scsi_completion()
1152 QEDF_WARN(&(qedf->dbg_ctx), in qedf_scsi_completion()
1158 QEDF_ERR(&qedf->dbg_ctx, in qedf_scsi_completion()
1164 QEDF_WARN(&(qedf->dbg_ctx), "request->q is NULL so request " in qedf_scsi_completion()
1178 QEDF_INFO(&qedf->dbg_ctx, QEDF_LOG_IO, in qedf_scsi_completion()
1186 qedf_unmap_sg_list(qedf, io_req); in qedf_scsi_completion()
1190 QEDF_ERR(&(qedf->dbg_ctx), in qedf_scsi_completion()
1201 QEDF_ERR(&qedf->dbg_ctx, in qedf_scsi_completion()
1228 QEDF_INFO(&(qedf->dbg_ctx), QEDF_LOG_IO, in qedf_scsi_completion()
1232 qedf->lport->host->host_no, sc_cmd->device->id, in qedf_scsi_completion()
1258 qedf->task_set_fulls++; in qedf_scsi_completion()
1260 qedf->busy++; in qedf_scsi_completion()
1272 QEDF_INFO(&qedf->dbg_ctx, QEDF_LOG_IO, in qedf_scsi_completion()
1277 QEDF_INFO(&qedf->dbg_ctx, QEDF_LOG_IO, in qedf_scsi_completion()
1290 QEDF_INFO(&qedf->dbg_ctx, QEDF_LOG_IO, in qedf_scsi_completion()
1297 QEDF_INFO(&(qedf->dbg_ctx), QEDF_LOG_IO, "fcp_status=%d.\n", in qedf_scsi_completion()
1319 void qedf_scsi_done(struct qedf_ctx *qedf, struct qedf_ioreq *io_req, in qedf_scsi_done() argument
1326 QEDF_INFO(&qedf->dbg_ctx, QEDF_LOG_IO, "io_req is NULL\n"); in qedf_scsi_done()
1331 QEDF_INFO(&qedf->dbg_ctx, QEDF_LOG_IO, in qedf_scsi_done()
1346 QEDF_WARN(&(qedf->dbg_ctx), "sc_cmd is NULL!\n"); in qedf_scsi_done()
1351 QEDF_ERR(&qedf->dbg_ctx, "sc_cmd=%p is not valid.", sc_cmd); in qedf_scsi_done()
1356 QEDF_WARN(&(qedf->dbg_ctx), in qedf_scsi_done()
1362 QEDF_ERR(&qedf->dbg_ctx, "Device for sc_cmd %p is NULL.\n", in qedf_scsi_done()
1368 QEDF_ERR(&qedf->dbg_ctx, in qedf_scsi_done()
1374 QEDF_ERR(&qedf->dbg_ctx, in qedf_scsi_done()
1381 QEDF_ERR(&qedf->dbg_ctx, in qedf_scsi_done()
1387 qedf_unmap_sg_list(qedf, io_req); in qedf_scsi_done()
1391 QEDF_INFO(&(qedf->dbg_ctx), QEDF_LOG_IO, "%d:0:%d:%lld: Completing " in qedf_scsi_done()
1394 qedf->lport->host->host_no, sc_cmd->device->id, in qedf_scsi_done()
1428 void qedf_process_warning_compl(struct qedf_ctx *qedf, struct fcoe_cqe *cqe, in qedf_process_warning_compl() argument
1437 QEDF_INFO(&qedf->dbg_ctx, QEDF_LOG_IO, in qedf_process_warning_compl()
1443 QEDF_ERR(&(io_req->fcport->qedf->dbg_ctx), "Warning CQE, " in qedf_process_warning_compl()
1445 QEDF_ERR(&(io_req->fcport->qedf->dbg_ctx), in qedf_process_warning_compl()
1449 QEDF_ERR(&(io_req->fcport->qedf->dbg_ctx), "tx_buff_off=%08x, " in qedf_process_warning_compl()
1470 QEDF_ERR(&(qedf->dbg_ctx), "REC timer expired.\n"); in qedf_process_warning_compl()
1494 QEDF_ERR(&(qedf->dbg_ctx), "Failed to queue ABTS.\n"); in qedf_process_warning_compl()
1498 void qedf_process_error_detect(struct qedf_ctx *qedf, struct fcoe_cqe *cqe, in qedf_process_error_detect() argument
1514 QEDF_INFO(&qedf->dbg_ctx, QEDF_LOG_IO, in qedf_process_error_detect()
1519 QEDF_ERR(&(io_req->fcport->qedf->dbg_ctx), "Error detection CQE, " in qedf_process_error_detect()
1521 QEDF_ERR(&(io_req->fcport->qedf->dbg_ctx), in qedf_process_error_detect()
1525 QEDF_ERR(&(io_req->fcport->qedf->dbg_ctx), "tx_buff_off=%08x, " in qedf_process_error_detect()
1535 QEDF_ERR(&qedf->dbg_ctx, in qedf_process_error_detect()
1541 if (qedf->stop_io_on_error) { in qedf_process_error_detect()
1542 qedf_stop_all_io(qedf); in qedf_process_error_detect()
1549 QEDF_ERR(&(qedf->dbg_ctx), "Failed to queue ABTS.\n"); in qedf_process_error_detect()
1552 static void qedf_flush_els_req(struct qedf_ctx *qedf, in qedf_flush_els_req() argument
1555 QEDF_INFO(&(qedf->dbg_ctx), QEDF_LOG_IO, in qedf_flush_els_req()
1586 struct qedf_ctx *qedf; in qedf_flush_active_ios() local
1605 qedf = fcport->qedf; in qedf_flush_active_ios()
1607 if (!qedf) { in qedf_flush_active_ios()
1616 QEDF_INFO(&qedf->dbg_ctx, QEDF_LOG_IO, in qedf_flush_active_ios()
1629 cmd_mgr = qedf->cmd_mgr; in qedf_flush_active_ios()
1631 QEDF_INFO(&qedf->dbg_ctx, QEDF_LOG_IO, in qedf_flush_active_ios()
1635 QEDF_INFO(&qedf->dbg_ctx, QEDF_LOG_IO, "Locking flush mutex.\n"); in qedf_flush_active_ios()
1637 mutex_lock(&qedf->flush_mutex); in qedf_flush_active_ios()
1658 QEDF_ERR(&qedf->dbg_ctx, in qedf_flush_active_ios()
1678 QEDF_INFO(&qedf->dbg_ctx, QEDF_LOG_IO, in qedf_flush_active_ios()
1688 QEDF_INFO(&qedf->dbg_ctx, QEDF_LOG_IO, in qedf_flush_active_ios()
1704 QEDF_ERR(&(qedf->dbg_ctx), in qedf_flush_active_ios()
1711 qedf_flush_els_req(qedf, io_req); in qedf_flush_active_ios()
1724 QEDF_ERR(&(qedf->dbg_ctx), in qedf_flush_active_ios()
1732 QEDF_INFO(&qedf->dbg_ctx, QEDF_LOG_IO, in qedf_flush_active_ios()
1736 QEDF_INFO(&qedf->dbg_ctx, QEDF_LOG_IO, in qedf_flush_active_ios()
1743 QEDF_INFO(&qedf->dbg_ctx, QEDF_LOG_IO, in qedf_flush_active_ios()
1762 QEDF_INFO(&qedf->dbg_ctx, QEDF_LOG_IO, in qedf_flush_active_ios()
1782 QEDF_ERR(&(qedf->dbg_ctx), "Could not get kref for " in qedf_flush_active_ios()
1787 QEDF_INFO(&(qedf->dbg_ctx), QEDF_LOG_IO, in qedf_flush_active_ios()
1799 QEDF_INFO(&qedf->dbg_ctx, QEDF_LOG_IO, in qedf_flush_active_ios()
1806 QEDF_INFO(&qedf->dbg_ctx, QEDF_LOG_IO, in qedf_flush_active_ios()
1812 QEDF_ERR(&qedf->dbg_ctx, in qedf_flush_active_ios()
1824 QEDF_ERR(&qedf->dbg_ctx, in qedf_flush_active_ios()
1843 QEDF_INFO(&qedf->dbg_ctx, QEDF_LOG_IO, "Unlocking flush mutex.\n"); in qedf_flush_active_ios()
1844 mutex_unlock(&qedf->flush_mutex); in qedf_flush_active_ios()
1856 struct qedf_ctx *qedf; in qedf_initiate_abts() local
1871 qedf = fcport->qedf; in qedf_initiate_abts()
1875 QEDF_ERR(&qedf->dbg_ctx, "stale rport\n"); in qedf_initiate_abts()
1880 lport = qedf->lport; in qedf_initiate_abts()
1883 QEDF_ERR(&(qedf->dbg_ctx), "link is not ready\n"); in qedf_initiate_abts()
1888 if (atomic_read(&qedf->link_down_tmo_valid) > 0) { in qedf_initiate_abts()
1889 QEDF_ERR(&(qedf->dbg_ctx), "link_down_tmo active.\n"); in qedf_initiate_abts()
1896 QEDF_ERR(&(qedf->dbg_ctx), "No SQ entries available\n"); in qedf_initiate_abts()
1902 QEDF_ERR(&qedf->dbg_ctx, "fcport is uploading.\n"); in qedf_initiate_abts()
1910 QEDF_ERR(&qedf->dbg_ctx, in qedf_initiate_abts()
1920 qedf->control_requests++; in qedf_initiate_abts()
1921 qedf->packet_aborts++; in qedf_initiate_abts()
1929 QEDF_INFO(&qedf->dbg_ctx, QEDF_LOG_SCSI_TM, in qedf_initiate_abts()
1933 qedf_cmd_timer_set(qedf, io_req, QEDF_ABORT_TIMEOUT); in qedf_initiate_abts()
1953 void qedf_process_abts_compl(struct qedf_ctx *qedf, struct fcoe_cqe *cqe, in qedf_process_abts_compl() argument
1960 QEDF_INFO(&(qedf->dbg_ctx), QEDF_LOG_SCSI_TM, "Entered with xid = " in qedf_process_abts_compl()
1970 QEDF_INFO(&qedf->dbg_ctx, QEDF_LOG_IO, in qedf_process_abts_compl()
1982 QEDF_INFO(&qedf->dbg_ctx, QEDF_LOG_IO, in qedf_process_abts_compl()
1989 QEDF_ERR(&qedf->dbg_ctx, in qedf_process_abts_compl()
1995 QEDF_INFO(&(qedf->dbg_ctx), QEDF_LOG_SCSI_TM, in qedf_process_abts_compl()
2000 QEDF_INFO(&qedf->dbg_ctx, QEDF_LOG_SCSI_TM, in qedf_process_abts_compl()
2009 queue_delayed_work(qedf->dpc_wq, &io_req->rrq_work, in qedf_process_abts_compl()
2010 msecs_to_jiffies(qedf->lport->r_a_tov)); in qedf_process_abts_compl()
2015 QEDF_INFO(&(qedf->dbg_ctx), QEDF_LOG_SCSI_TM, in qedf_process_abts_compl()
2020 QEDF_ERR(&(qedf->dbg_ctx), "Unknown ABTS response\n"); in qedf_process_abts_compl()
2028 QEDF_INFO(&qedf->dbg_ctx, QEDF_LOG_SCSI_TM, in qedf_process_abts_compl()
2032 qedf_scsi_done(qedf, io_req, DID_ERROR); in qedf_process_abts_compl()
2046 struct qedf_ctx *qedf = io_req->fcport->qedf; in qedf_init_mp_req() local
2050 QEDF_INFO(&(qedf->dbg_ctx), QEDF_LOG_MP_REQ, "Entered.\n"); in qedf_init_mp_req()
2061 mp_req->req_buf = dma_alloc_coherent(&qedf->pdev->dev, QEDF_PAGE_SIZE, in qedf_init_mp_req()
2064 QEDF_ERR(&(qedf->dbg_ctx), "Unable to alloc MP req buffer\n"); in qedf_init_mp_req()
2069 mp_req->resp_buf = dma_alloc_coherent(&qedf->pdev->dev, in qedf_init_mp_req()
2072 QEDF_ERR(&(qedf->dbg_ctx), "Unable to alloc TM resp " in qedf_init_mp_req()
2080 mp_req->mp_req_bd = dma_alloc_coherent(&qedf->pdev->dev, sz, in qedf_init_mp_req()
2083 QEDF_ERR(&(qedf->dbg_ctx), "Unable to alloc MP req bd\n"); in qedf_init_mp_req()
2088 mp_req->mp_resp_bd = dma_alloc_coherent(&qedf->pdev->dev, sz, in qedf_init_mp_req()
2091 QEDF_ERR(&(qedf->dbg_ctx), "Unable to alloc MP resp bd\n"); in qedf_init_mp_req()
2121 static void qedf_drain_request(struct qedf_ctx *qedf) in qedf_drain_request() argument
2123 if (test_bit(QEDF_DRAIN_ACTIVE, &qedf->flags)) { in qedf_drain_request()
2124 QEDF_ERR(&(qedf->dbg_ctx), "MCP drain already active.\n"); in qedf_drain_request()
2129 set_bit(QEDF_DRAIN_ACTIVE, &qedf->flags); in qedf_drain_request()
2132 qed_ops->common->drain(qedf->cdev); in qedf_drain_request()
2138 clear_bit(QEDF_DRAIN_ACTIVE, &qedf->flags); in qedf_drain_request()
2149 struct qedf_ctx *qedf; in qedf_initiate_cleanup() local
2169 qedf = fcport->qedf; in qedf_initiate_cleanup()
2170 if (!qedf) { in qedf_initiate_cleanup()
2181 QEDF_ERR(&(qedf->dbg_ctx), "io_req xid=0x%x already in " in qedf_initiate_cleanup()
2191 QEDF_ERR(&(qedf->dbg_ctx), "No SQ entries available\n"); in qedf_initiate_cleanup()
2198 QEDF_ERR(&qedf->dbg_ctx, in qedf_initiate_cleanup()
2207 QEDF_INFO(&qedf->dbg_ctx, QEDF_LOG_IO, in qedf_initiate_cleanup()
2236 QEDF_ERR(&(qedf->dbg_ctx), "Cleanup command timeout, " in qedf_initiate_cleanup()
2240 QEDF_ERR(&(qedf->dbg_ctx), "Issuing MCP drain request.\n"); in qedf_initiate_cleanup()
2241 qedf_drain_request(qedf); in qedf_initiate_cleanup()
2257 QEDF_INFO(&qedf->dbg_ctx, QEDF_LOG_SCSI_TM, in qedf_initiate_cleanup()
2261 qedf_scsi_done(qedf, io_req, DID_ERROR); in qedf_initiate_cleanup()
2272 void qedf_process_cleanup_compl(struct qedf_ctx *qedf, struct fcoe_cqe *cqe, in qedf_process_cleanup_compl() argument
2275 QEDF_INFO(&(qedf->dbg_ctx), QEDF_LOG_IO, "Entered xid = 0x%x\n", in qedf_process_cleanup_compl()
2289 struct qedf_ctx *qedf = fcport->qedf; in qedf_execute_tmf() local
2290 struct fc_lport *lport = qedf->lport; in qedf_execute_tmf()
2300 QEDF_ERR(&qedf->dbg_ctx, "sc_cmd is NULL\n"); in qedf_execute_tmf()
2306 QEDF_ERR(&(qedf->dbg_ctx), "fcport not offloaded\n"); in qedf_execute_tmf()
2313 QEDF_ERR(&(qedf->dbg_ctx), "Failed TMF"); in qedf_execute_tmf()
2319 qedf->lun_resets++; in qedf_execute_tmf()
2321 qedf->target_resets++; in qedf_execute_tmf()
2342 QEDF_INFO(&(qedf->dbg_ctx), QEDF_LOG_SCSI_TM, "TMF io_req xid = " in qedf_execute_tmf()
2346 task = qedf_get_task_mem(&qedf->tasks, xid); in qedf_execute_tmf()
2367 QEDF_ERR(&(qedf->dbg_ctx), "wait for tm_cmpl timeout!\n"); in qedf_execute_tmf()
2383 QEDF_ERR(&qedf->dbg_ctx, in qedf_execute_tmf()
2398 QEDF_ERR(&(qedf->dbg_ctx), "task mgmt command failed...\n"); in qedf_execute_tmf()
2401 QEDF_ERR(&(qedf->dbg_ctx), "task mgmt command success...\n"); in qedf_execute_tmf()
2412 struct qedf_ctx *qedf; in qedf_initiate_tmf() local
2459 qedf = fcport->qedf; in qedf_initiate_tmf()
2461 if (!qedf) { in qedf_initiate_tmf()
2468 QEDF_ERR(&qedf->dbg_ctx, "Connection is getting uploaded.\n"); in qedf_initiate_tmf()
2473 if (test_bit(QEDF_UNLOADING, &qedf->flags) || in qedf_initiate_tmf()
2474 test_bit(QEDF_DBG_STOP_IO, &qedf->flags)) { in qedf_initiate_tmf()
2480 QEDF_ERR(&(qedf->dbg_ctx), "link is not ready\n"); in qedf_initiate_tmf()
2487 QEDF_ERR(&qedf->dbg_ctx, "fcport %p is uploading.\n", in qedf_initiate_tmf()
2490 QEDF_ERR(&qedf->dbg_ctx, in qedf_initiate_tmf()
2504 void qedf_process_tmf_compl(struct qedf_ctx *qedf, struct fcoe_cqe *cqe, in qedf_process_tmf_compl() argument
2518 void qedf_process_unsol_compl(struct qedf_ctx *qedf, uint16_t que_idx, in qedf_process_unsol_compl() argument
2532 QEDF_INFO(&(qedf->dbg_ctx), QEDF_LOG_UNSOL, in qedf_process_unsol_compl()
2538 qedf->bdq_prod_idx, pktlen); in qedf_process_unsol_compl()
2542 QEDF_ERR(&(qedf->dbg_ctx), "bdq_idx is out of range %d.\n", in qedf_process_unsol_compl()
2547 bdq_addr = qedf->bdq[bdq_idx].buf_addr; in qedf_process_unsol_compl()
2549 QEDF_ERR(&(qedf->dbg_ctx), "bdq_addr is NULL, dropping " in qedf_process_unsol_compl()
2555 QEDF_INFO(&(qedf->dbg_ctx), QEDF_LOG_UNSOL, in qedf_process_unsol_compl()
2563 fp = fc_frame_alloc(qedf->lport, payload_len); in qedf_process_unsol_compl()
2565 QEDF_ERR(&(qedf->dbg_ctx), "Could not allocate fp.\n"); in qedf_process_unsol_compl()
2573 QEDF_WARN(&qedf->dbg_ctx, in qedf_process_unsol_compl()
2581 fr_dev(fp) = qedf->lport; in qedf_process_unsol_compl()
2590 io_work = mempool_alloc(qedf->io_mempool, GFP_ATOMIC); in qedf_process_unsol_compl()
2592 QEDF_WARN(&(qedf->dbg_ctx), "Could not allocate " in qedf_process_unsol_compl()
2604 io_work->qedf = qedf; in qedf_process_unsol_compl()
2609 spin_lock_irqsave(&qedf->hba_lock, flags); in qedf_process_unsol_compl()
2612 qedf->bdq_prod_idx++; in qedf_process_unsol_compl()
2615 if (qedf->bdq_prod_idx == 0xffff) in qedf_process_unsol_compl()
2616 qedf->bdq_prod_idx = 0; in qedf_process_unsol_compl()
2618 writew(qedf->bdq_prod_idx, qedf->bdq_primary_prod); in qedf_process_unsol_compl()
2619 readw(qedf->bdq_primary_prod); in qedf_process_unsol_compl()
2620 writew(qedf->bdq_prod_idx, qedf->bdq_secondary_prod); in qedf_process_unsol_compl()
2621 readw(qedf->bdq_secondary_prod); in qedf_process_unsol_compl()
2623 spin_unlock_irqrestore(&qedf->hba_lock, flags); in qedf_process_unsol_compl()