Lines Matching refs:piocb
1522 struct lpfc_iocbq *piocb; in lpfc_sli_cancel_iocbs() local
1525 list_remove_head(iocblist, piocb, struct lpfc_iocbq, list); in lpfc_sli_cancel_iocbs()
1526 if (piocb->cmd_cmpl) { in lpfc_sli_cancel_iocbs()
1527 if (piocb->cmd_flag & LPFC_IO_NVME) { in lpfc_sli_cancel_iocbs()
1528 lpfc_nvme_cancel_iocb(phba, piocb, in lpfc_sli_cancel_iocbs()
1533 &piocb->wcqe_cmpl, ulpstatus); in lpfc_sli_cancel_iocbs()
1534 piocb->wcqe_cmpl.parameter = ulpWord4; in lpfc_sli_cancel_iocbs()
1536 piocb->iocb.ulpStatus = ulpstatus; in lpfc_sli_cancel_iocbs()
1537 piocb->iocb.un.ulpWord[4] = ulpWord4; in lpfc_sli_cancel_iocbs()
1539 (piocb->cmd_cmpl) (phba, piocb, piocb); in lpfc_sli_cancel_iocbs()
1542 lpfc_sli_release_iocbq(phba, piocb); in lpfc_sli_cancel_iocbs()
1722 struct lpfc_iocbq *piocb) in lpfc_sli_ringtxcmpl_put() argument
1726 BUG_ON(!piocb); in lpfc_sli_ringtxcmpl_put()
1727 ulp_command = get_job_cmnd(phba, piocb); in lpfc_sli_ringtxcmpl_put()
1729 list_add_tail(&piocb->list, &pring->txcmplq); in lpfc_sli_ringtxcmpl_put()
1730 piocb->cmd_flag |= LPFC_IO_ON_TXCMPLQ; in lpfc_sli_ringtxcmpl_put()
1736 BUG_ON(!piocb->vport); in lpfc_sli_ringtxcmpl_put()
1737 if (!(piocb->vport->load_flag & FC_UNLOADING)) in lpfc_sli_ringtxcmpl_put()
1738 mod_timer(&piocb->vport->els_tmofunc, in lpfc_sli_ringtxcmpl_put()
3194 lpfc_nvme_unsol_ls_handler(struct lpfc_hba *phba, struct lpfc_iocbq *piocb) in lpfc_nvme_unsol_ls_handler() argument
3205 d_buf = piocb->cmd_dmabuf; in lpfc_nvme_unsol_ls_handler()
4659 struct lpfc_iocbq *piocb, *next_iocb; in lpfc_sli_flush_io_rings() local
4674 list_for_each_entry_safe(piocb, next_iocb, in lpfc_sli_flush_io_rings()
4676 piocb->cmd_flag &= ~LPFC_IO_ON_TXCMPLQ; in lpfc_sli_flush_io_rings()
4700 list_for_each_entry_safe(piocb, next_iocb, in lpfc_sli_flush_io_rings()
4702 piocb->cmd_flag &= ~LPFC_IO_ON_TXCMPLQ; in lpfc_sli_flush_io_rings()
10365 struct lpfc_iocbq *piocb) in __lpfc_sli_ringtx_put() argument
10372 list_add_tail(&piocb->list, &pring->txq); in __lpfc_sli_ringtx_put()
10394 struct lpfc_iocbq **piocb) in lpfc_sli_next_iocb() argument
10402 nextiocb = *piocb; in lpfc_sli_next_iocb()
10403 *piocb = NULL; in lpfc_sli_next_iocb()
10433 struct lpfc_iocbq *piocb, uint32_t flag) in __lpfc_sli_issue_iocb_s3() argument
10441 if (piocb->cmd_cmpl && (!piocb->vport) && in __lpfc_sli_issue_iocb_s3()
10442 (piocb->iocb.ulpCommand != CMD_ABORT_XRI_CN) && in __lpfc_sli_issue_iocb_s3()
10443 (piocb->iocb.ulpCommand != CMD_CLOSE_XRI_CN)) { in __lpfc_sli_issue_iocb_s3()
10446 piocb->iocb.ulpCommand); in __lpfc_sli_issue_iocb_s3()
10478 switch (piocb->iocb.ulpCommand) { in __lpfc_sli_issue_iocb_s3()
10485 if (piocb->cmd_cmpl) in __lpfc_sli_issue_iocb_s3()
10486 piocb->cmd_cmpl = NULL; in __lpfc_sli_issue_iocb_s3()
10506 (nextiocb = lpfc_sli_next_iocb(phba, pring, &piocb))) in __lpfc_sli_issue_iocb_s3()
10514 if (!piocb) in __lpfc_sli_issue_iocb_s3()
10525 __lpfc_sli_ringtx_put(phba, pring, piocb); in __lpfc_sli_issue_iocb_s3()
10548 struct lpfc_iocbq *piocb, uint32_t flag) in __lpfc_sli_issue_fcp_io_s3() argument
10554 rc = __lpfc_sli_issue_iocb_s3(phba, ring_number, piocb, flag); in __lpfc_sli_issue_fcp_io_s3()
10576 struct lpfc_iocbq *piocb, uint32_t flag) in __lpfc_sli_issue_fcp_io_s4() argument
10578 struct lpfc_io_buf *lpfc_cmd = piocb->io_buf; in __lpfc_sli_issue_fcp_io_s4()
10581 return lpfc_sli4_issue_wqe(phba, lpfc_cmd->hdwq, piocb); in __lpfc_sli_issue_fcp_io_s4()
10587 struct lpfc_iocbq *piocb = &lpfc_cmd->cur_iocbq; in lpfc_prep_embed_io() local
10626 if (unlikely(piocb->cmd_flag & LPFC_IO_VMID)) { in lpfc_prep_embed_io()
10630 (piocb->vmid_tag.cs_ctl_vmid)); in lpfc_prep_embed_io()
10634 wqe->words[31] = piocb->vmid_tag.app_id; in lpfc_prep_embed_io()
10655 struct lpfc_iocbq *piocb, uint32_t flag) in __lpfc_sli_issue_iocb_s4() argument
10661 u32 ulp_command = get_job_cmnd(phba, piocb); in __lpfc_sli_issue_iocb_s4()
10664 if ((piocb->cmd_flag & LPFC_IO_FCP) || in __lpfc_sli_issue_iocb_s4()
10665 (piocb->cmd_flag & LPFC_USE_FCPWQIDX)) { in __lpfc_sli_issue_iocb_s4()
10666 wq = phba->sli4_hba.hdwq[piocb->hba_wqidx].io_wq; in __lpfc_sli_issue_iocb_s4()
10679 wqe = &piocb->wqe; in __lpfc_sli_issue_iocb_s4()
10680 if (piocb->sli4_xritag == NO_XRI) { in __lpfc_sli_issue_iocb_s4()
10684 sglq = __lpfc_sli_get_els_sglq(phba, piocb); in __lpfc_sli_issue_iocb_s4()
10689 piocb); in __lpfc_sli_issue_iocb_s4()
10696 } else if (piocb->cmd_flag & LPFC_IO_FCP) { in __lpfc_sli_issue_iocb_s4()
10705 sglq = __lpfc_get_active_sglq(phba, piocb->sli4_lxritag); in __lpfc_sli_issue_iocb_s4()
10711 piocb->sli4_lxritag = sglq->sli4_lxritag; in __lpfc_sli_issue_iocb_s4()
10712 piocb->sli4_xritag = sglq->sli4_xritag; in __lpfc_sli_issue_iocb_s4()
10719 piocb->abort_bls == LPFC_ABTS_UNSOL_INT) in __lpfc_sli_issue_iocb_s4()
10721 piocb->sli4_xritag); in __lpfc_sli_issue_iocb_s4()
10724 piocb->sli4_xritag); in __lpfc_sli_issue_iocb_s4()
10726 if (lpfc_wqe_bpl2sgl(phba, piocb, sglq) == NO_XRI) in __lpfc_sli_issue_iocb_s4()
10733 lpfc_sli_ringtxcmpl_put(phba, pring, piocb); in __lpfc_sli_issue_iocb_s4()
10752 struct lpfc_iocbq *piocb, uint32_t flag) in lpfc_sli_issue_fcp_io() argument
10754 return phba->__lpfc_sli_issue_fcp_io(phba, ring_number, piocb, flag); in lpfc_sli_issue_fcp_io()
10770 struct lpfc_iocbq *piocb, uint32_t flag) in __lpfc_sli_issue_iocb() argument
10772 return phba->__lpfc_sli_issue_iocb(phba, ring_number, piocb, flag); in __lpfc_sli_issue_iocb()
11232 lpfc_sli4_calc_ring(struct lpfc_hba *phba, struct lpfc_iocbq *piocb) in lpfc_sli4_calc_ring() argument
11236 if (piocb->cmd_flag & (LPFC_IO_FCP | LPFC_USE_FCPWQIDX)) { in lpfc_sli4_calc_ring()
11243 if (!(piocb->cmd_flag & LPFC_USE_FCPWQIDX)) { in lpfc_sli4_calc_ring()
11244 lpfc_cmd = piocb->io_buf; in lpfc_sli4_calc_ring()
11245 piocb->hba_wqidx = lpfc_cmd->hdwq_no; in lpfc_sli4_calc_ring()
11247 return phba->sli4_hba.hdwq[piocb->hba_wqidx].io_wq->pring; in lpfc_sli4_calc_ring()
11251 piocb->hba_wqidx = 0; in lpfc_sli4_calc_ring()
11271 struct lpfc_iocbq *piocb, uint32_t flag) in lpfc_sli_issue_iocb() argument
11283 lpfc_sli_prep_wqe(phba, piocb); in lpfc_sli_issue_iocb()
11285 eq = phba->sli4_hba.hdwq[piocb->hba_wqidx].hba_eq; in lpfc_sli_issue_iocb()
11287 pring = lpfc_sli4_calc_ring(phba, piocb); in lpfc_sli_issue_iocb()
11292 rc = __lpfc_sli_issue_iocb(phba, ring_number, piocb, flag); in lpfc_sli_issue_iocb()
11299 rc = __lpfc_sli_issue_iocb(phba, ring_number, piocb, flag); in lpfc_sli_issue_iocb()
13090 struct lpfc_iocbq *piocb, in lpfc_sli_issue_iocb_wait() argument
13106 lpfc_sli_prep_wqe(phba, piocb); in lpfc_sli_issue_iocb_wait()
13108 pring = lpfc_sli4_calc_ring(phba, piocb); in lpfc_sli_issue_iocb_wait()
13116 if (piocb->rsp_iocb) in lpfc_sli_issue_iocb_wait()
13118 piocb->rsp_iocb = prspiocbq; in lpfc_sli_issue_iocb_wait()
13121 piocb->wait_cmd_cmpl = piocb->cmd_cmpl; in lpfc_sli_issue_iocb_wait()
13122 piocb->cmd_cmpl = lpfc_sli_wake_iocb_wait; in lpfc_sli_issue_iocb_wait()
13123 piocb->context_un.wait_queue = &done_q; in lpfc_sli_issue_iocb_wait()
13124 piocb->cmd_flag &= ~(LPFC_IO_WAKE | LPFC_IO_WAKE_TMO); in lpfc_sli_issue_iocb_wait()
13134 retval = lpfc_sli_issue_iocb(phba, ring_number, piocb, in lpfc_sli_issue_iocb_wait()
13139 lpfc_chk_iocb_flg(phba, piocb, LPFC_IO_WAKE), in lpfc_sli_issue_iocb_wait()
13142 if (!(piocb->cmd_flag & LPFC_IO_WAKE)) { in lpfc_sli_issue_iocb_wait()
13150 piocb->cmd_flag |= LPFC_IO_WAKE_TMO; in lpfc_sli_issue_iocb_wait()
13202 piocb->rsp_iocb = NULL; in lpfc_sli_issue_iocb_wait()
13204 piocb->context_un.wait_queue = NULL; in lpfc_sli_issue_iocb_wait()
13205 piocb->cmd_cmpl = NULL; in lpfc_sli_issue_iocb_wait()