Lines Matching full:vport

52 lpfc_check_adisc(struct lpfc_vport *vport, struct lpfc_nodelist *ndlp,  in lpfc_check_adisc()  argument
73 lpfc_check_sparm(struct lpfc_vport *vport, struct lpfc_nodelist *ndlp, in lpfc_check_sparm() argument
76 volatile struct serv_parm *hsp = &vport->fc_sparam; in lpfc_check_sparm()
155 lpfc_printf_vlog(vport, KERN_ERR, LOG_TRACE_EVENT, in lpfc_check_sparm()
226 lpfc_printf_vlog(ndlp->vport, KERN_INFO, LOG_DISCOVERY, in lpfc_els_abort()
309 rc = lpfc_els_rsp_acc(login_mbox->vport, ELS_CMD_PLOGI, in lpfc_defer_plogi_acc()
325 lpfc_rcv_plogi(struct lpfc_vport *vport, struct lpfc_nodelist *ndlp, in lpfc_rcv_plogi() argument
328 struct lpfc_hba *phba = vport->phba; in lpfc_rcv_plogi()
349 lpfc_printf_vlog(vport, KERN_ERR, LOG_TRACE_EVENT, in lpfc_rcv_plogi()
353 lpfc_els_rsp_reject(vport, stat.un.lsRjtError, cmdiocb, ndlp, in lpfc_rcv_plogi()
358 lpfc_printf_vlog(vport, KERN_ERR, LOG_TRACE_EVENT, in lpfc_rcv_plogi()
362 lpfc_els_rsp_reject(vport, stat.un.lsRjtError, cmdiocb, ndlp, in lpfc_rcv_plogi()
368 if ((lpfc_check_sparm(vport, ndlp, sp, CLASS3, 0) == 0)) { in lpfc_rcv_plogi()
372 lpfc_els_rsp_reject(vport, stat.un.lsRjtError, cmdiocb, ndlp, in lpfc_rcv_plogi()
383 lpfc_printf_vlog(vport, KERN_INFO, LOG_ELS, in lpfc_rcv_plogi()
387 ndlp->nlp_rpi, vport->port_state, in lpfc_rcv_plogi()
388 vport->fc_flag); in lpfc_rcv_plogi()
390 if (vport->cfg_fcp_class == 2 && sp->cls2.classValid) in lpfc_rcv_plogi()
431 lpfc_els_rsp_acc(vport, ELS_CMD_PLOGI, cmdiocb, in lpfc_rcv_plogi()
437 lpfc_printf_vlog(vport, KERN_ERR, LOG_TRACE_EVENT, in lpfc_rcv_plogi()
452 lpfc_nlp_set_state(vport, ndlp, NLP_STE_NPR_NODE); in lpfc_rcv_plogi()
467 if ((vport->fc_flag & FC_PT2PT) && in lpfc_rcv_plogi()
468 !(vport->fc_flag & FC_PT2PT_PLOGI)) { in lpfc_rcv_plogi()
471 vport->fc_myDID = bf_get(els_rsp64_sid, in lpfc_rcv_plogi()
474 vport->fc_myDID = icmd->un.rcvels.parmRo; in lpfc_rcv_plogi()
507 lpfc_issue_reg_vfi(vport); in lpfc_rcv_plogi()
515 link_mbox->vport = vport; in lpfc_rcv_plogi()
529 lpfc_can_disctmo(vport); in lpfc_rcv_plogi()
555 lpfc_unreg_rpi(vport, ndlp); in lpfc_rcv_plogi()
564 rc = lpfc_reg_rpi(phba, vport->vpi, remote_did, in lpfc_rcv_plogi()
570 login_mbox->vport = vport; in lpfc_rcv_plogi()
583 (vport->fc_flag & FC_FABRIC)) { in lpfc_rcv_plogi()
588 if ((vport->port_type == LPFC_NPIV_PORT && in lpfc_rcv_plogi()
589 vport->cfg_restrict_login)) { in lpfc_rcv_plogi()
615 rc = lpfc_els_rsp_reject(vport, stat.un.lsRjtError, cmdiocb, in lpfc_rcv_plogi()
655 lpfc_nlp_set_state(vport, ndlp, NLP_STE_REG_LOGIN_ISSUE); in lpfc_rcv_plogi()
665 lpfc_els_rsp_reject(vport, stat.un.lsRjtError, cmdiocb, ndlp, NULL); in lpfc_rcv_plogi()
680 struct lpfc_vport *vport; in lpfc_mbx_cmpl_resume_rpi() local
687 vport = mboxq->vport; in lpfc_mbx_cmpl_resume_rpi()
691 lpfc_els_rsp_adisc_acc(vport, elsiocb, ndlp); in lpfc_mbx_cmpl_resume_rpi()
693 lpfc_els_rsp_acc(vport, ELS_CMD_PLOGI, elsiocb, in lpfc_mbx_cmpl_resume_rpi()
705 lpfc_rcv_padisc(struct lpfc_vport *vport, struct lpfc_nodelist *ndlp, in lpfc_rcv_padisc() argument
708 struct lpfc_hba *phba = vport->phba; in lpfc_rcv_padisc()
733 lpfc_check_adisc(vport, ndlp, pnn, ppn)) { in lpfc_rcv_padisc()
740 if (vport->phba->sli_rev == LPFC_SLI_REV4) { in lpfc_rcv_padisc()
760 lpfc_els_rsp_adisc_acc(vport, cmdiocb, ndlp); in lpfc_rcv_padisc()
762 lpfc_els_rsp_acc(vport, ELS_CMD_PLOGI, cmdiocb, in lpfc_rcv_padisc()
778 lpfc_nlp_set_state(vport, ndlp, in lpfc_rcv_padisc()
789 lpfc_els_rsp_reject(vport, stat.un.lsRjtError, cmdiocb, ndlp, NULL); in lpfc_rcv_padisc()
799 lpfc_nlp_set_state(vport, ndlp, NLP_STE_NPR_NODE); in lpfc_rcv_padisc()
804 lpfc_rcv_logo(struct lpfc_vport *vport, struct lpfc_nodelist *ndlp, in lpfc_rcv_logo() argument
807 struct Scsi_Host *shost = lpfc_shost_from_vport(vport); in lpfc_rcv_logo()
808 struct lpfc_hba *phba = vport->phba; in lpfc_rcv_logo()
820 lpfc_els_rsp_acc(vport, ELS_CMD_PRLO, cmdiocb, ndlp, NULL); in lpfc_rcv_logo()
822 lpfc_els_rsp_acc(vport, ELS_CMD_ACC, cmdiocb, ndlp, NULL); in lpfc_rcv_logo()
839 if (vport->port_state <= LPFC_FDISC || in lpfc_rcv_logo()
840 vport->fc_flag & FC_PT2PT) in lpfc_rcv_logo()
842 lpfc_linkdown_port(vport); in lpfc_rcv_logo()
844 vport->fc_flag |= FC_VPORT_LOGO_RCVD; in lpfc_rcv_logo()
861 * Don't re-instantiate if vport is marked for deletion. in lpfc_rcv_logo()
865 if (!(vport->load_flag & FC_UNLOADING) && in lpfc_rcv_logo()
877 vport->port_state = LPFC_FDISC; in lpfc_rcv_logo()
885 lpfc_printf_vlog(vport, KERN_INFO, in lpfc_rcv_logo()
890 ndlp->nlp_type, vport->fc_flag); in lpfc_rcv_logo()
895 vport->fc_flag & FC_PT2PT)) || in lpfc_rcv_logo()
904 lpfc_printf_vlog(vport, KERN_INFO, in lpfc_rcv_logo()
915 lpfc_nlp_unreg_node(vport, ndlp); in lpfc_rcv_logo()
918 lpfc_nlp_set_state(vport, ndlp, NLP_STE_NPR_NODE); in lpfc_rcv_logo()
932 lpfc_rcv_prli_support_check(struct lpfc_vport *vport, in lpfc_rcv_prli_support_check() argument
942 if (vport->phba->nvmet_support) { in lpfc_rcv_prli_support_check()
948 if (!vport->nvmei_support && (cmd == ELS_CMD_NVMEPRLI)) in lpfc_rcv_prli_support_check()
953 lpfc_printf_vlog(vport, KERN_WARNING, LOG_NVME_DISC, in lpfc_rcv_prli_support_check()
961 lpfc_els_rsp_reject(vport, stat.un.lsRjtError, cmdiocb, in lpfc_rcv_prli_support_check()
967 lpfc_rcv_prli(struct lpfc_vport *vport, struct lpfc_nodelist *ndlp, in lpfc_rcv_prli() argument
970 struct lpfc_hba *phba = vport->phba; in lpfc_rcv_prli()
1013 lpfc_nlp_set_state(vport, ndlp, NLP_STE_UNMAPPED_NODE); in lpfc_rcv_prli()
1031 lpfc_debugfs_disc_trc(vport, LPFC_DISC_TRC_RPORT, in lpfc_rcv_prli()
1035 if (vport->cfg_enable_fc4_type != LPFC_ENABLE_NVME) in lpfc_rcv_prli()
1041 lpfc_disc_set_adisc(struct lpfc_vport *vport, struct lpfc_nodelist *ndlp) in lpfc_disc_set_adisc() argument
1050 if (!(vport->fc_flag & FC_PT2PT)) { in lpfc_disc_set_adisc()
1052 if (vport->cfg_use_adisc && ((vport->fc_flag & FC_RSCN_MODE) || in lpfc_disc_set_adisc()
1065 lpfc_unreg_rpi(vport, ndlp); in lpfc_disc_set_adisc()
1072 * @vport: Pointer to lpfc_vport structure.
1080 lpfc_release_rpi(struct lpfc_hba *phba, struct lpfc_vport *vport, in lpfc_release_rpi() argument
1090 lpfc_printf_vlog(vport, KERN_INFO, LOG_DISCOVERY, in lpfc_release_rpi()
1103 lpfc_printf_vlog(vport, KERN_ERR, LOG_TRACE_EVENT, in lpfc_release_rpi()
1106 lpfc_unreg_login(phba, vport->vpi, rpi, pmb); in lpfc_release_rpi()
1108 pmb->vport = vport; in lpfc_release_rpi()
1116 (!(vport->fc_flag & FC_OFFLINE_MODE))) in lpfc_release_rpi()
1119 lpfc_printf_vlog(vport, KERN_INFO, LOG_DISCOVERY, in lpfc_release_rpi()
1133 lpfc_disc_illegal(struct lpfc_vport *vport, struct lpfc_nodelist *ndlp, in lpfc_disc_illegal() argument
1140 phba = vport->phba; in lpfc_disc_illegal()
1146 lpfc_release_rpi(phba, vport, ndlp, rpi); in lpfc_disc_illegal()
1148 lpfc_printf_vlog(vport, KERN_ERR, LOG_TRACE_EVENT, in lpfc_disc_illegal()
1157 lpfc_cmpl_plogi_illegal(struct lpfc_vport *vport, struct lpfc_nodelist *ndlp, in lpfc_cmpl_plogi_illegal() argument
1166 lpfc_printf_vlog(vport, KERN_ERR, LOG_TRACE_EVENT, in lpfc_cmpl_plogi_illegal()
1178 lpfc_rcv_plogi_unused_node(struct lpfc_vport *vport, struct lpfc_nodelist *ndlp, in lpfc_rcv_plogi_unused_node() argument
1185 if (lpfc_rcv_plogi(vport, ndlp, cmdiocb)) { in lpfc_rcv_plogi_unused_node()
1192 lpfc_rcv_els_unused_node(struct lpfc_vport *vport, struct lpfc_nodelist *ndlp, in lpfc_rcv_els_unused_node() argument
1195 lpfc_issue_els_logo(vport, ndlp, 0); in lpfc_rcv_els_unused_node()
1200 lpfc_rcv_logo_unused_node(struct lpfc_vport *vport, struct lpfc_nodelist *ndlp, in lpfc_rcv_logo_unused_node() argument
1208 lpfc_els_rsp_acc(vport, ELS_CMD_ACC, cmdiocb, ndlp, NULL); in lpfc_rcv_logo_unused_node()
1214 lpfc_cmpl_logo_unused_node(struct lpfc_vport *vport, struct lpfc_nodelist *ndlp, in lpfc_cmpl_logo_unused_node() argument
1221 lpfc_device_rm_unused_node(struct lpfc_vport *vport, struct lpfc_nodelist *ndlp, in lpfc_device_rm_unused_node() argument
1228 lpfc_device_recov_unused_node(struct lpfc_vport *vport, in lpfc_device_recov_unused_node() argument
1236 lpfc_rcv_plogi_plogi_issue(struct lpfc_vport *vport, struct lpfc_nodelist *ndlp, in lpfc_rcv_plogi_plogi_issue() argument
1239 struct Scsi_Host *shost = lpfc_shost_from_vport(vport); in lpfc_rcv_plogi_plogi_issue()
1240 struct lpfc_hba *phba = vport->phba; in lpfc_rcv_plogi_plogi_issue()
1254 port_cmp = memcmp(&vport->fc_portname, &sp->portName, in lpfc_rcv_plogi_plogi_issue()
1262 lpfc_els_rsp_reject(vport, stat.un.lsRjtError, cmdiocb, ndlp, in lpfc_rcv_plogi_plogi_issue()
1265 if (lpfc_rcv_plogi(vport, ndlp, cmdiocb) && in lpfc_rcv_plogi_plogi_issue()
1267 (vport->num_disc_nodes)) { in lpfc_rcv_plogi_plogi_issue()
1272 lpfc_more_plogi(vport); in lpfc_rcv_plogi_plogi_issue()
1273 if (vport->num_disc_nodes == 0) { in lpfc_rcv_plogi_plogi_issue()
1275 vport->fc_flag &= ~FC_NDISC_ACTIVE; in lpfc_rcv_plogi_plogi_issue()
1277 lpfc_can_disctmo(vport); in lpfc_rcv_plogi_plogi_issue()
1278 lpfc_end_rscn(vport); in lpfc_rcv_plogi_plogi_issue()
1287 lpfc_rcv_prli_plogi_issue(struct lpfc_vport *vport, struct lpfc_nodelist *ndlp, in lpfc_rcv_prli_plogi_issue() argument
1296 lpfc_els_rsp_reject(vport, stat.un.lsRjtError, cmdiocb, ndlp, NULL); in lpfc_rcv_prli_plogi_issue()
1301 lpfc_rcv_logo_plogi_issue(struct lpfc_vport *vport, struct lpfc_nodelist *ndlp, in lpfc_rcv_logo_plogi_issue() argument
1307 if (vport->phba->sli_rev == LPFC_SLI_REV3) in lpfc_rcv_logo_plogi_issue()
1310 lpfc_els_abort(vport->phba, ndlp); in lpfc_rcv_logo_plogi_issue()
1312 lpfc_rcv_logo(vport, ndlp, cmdiocb, ELS_CMD_LOGO); in lpfc_rcv_logo_plogi_issue()
1317 lpfc_rcv_els_plogi_issue(struct lpfc_vport *vport, struct lpfc_nodelist *ndlp, in lpfc_rcv_els_plogi_issue() argument
1320 struct lpfc_hba *phba = vport->phba; in lpfc_rcv_els_plogi_issue()
1327 lpfc_els_rsp_acc(vport, ELS_CMD_ACC, cmdiocb, ndlp, NULL); in lpfc_rcv_els_plogi_issue()
1329 lpfc_issue_els_logo(vport, ndlp, 0); in lpfc_rcv_els_plogi_issue()
1339 lpfc_nlp_set_state(vport, ndlp, NLP_STE_NPR_NODE); in lpfc_rcv_els_plogi_issue()
1345 lpfc_cmpl_plogi_plogi_issue(struct lpfc_vport *vport, in lpfc_cmpl_plogi_plogi_issue() argument
1350 struct lpfc_hba *phba = vport->phba; in lpfc_cmpl_plogi_plogi_issue()
1388 lpfc_printf_vlog(vport, KERN_ERR, LOG_TRACE_EVENT, in lpfc_cmpl_plogi_plogi_issue()
1392 if (!lpfc_check_sparm(vport, ndlp, sp, CLASS3, 0)) in lpfc_cmpl_plogi_plogi_issue()
1395 lpfc_printf_vlog(vport, KERN_INFO, LOG_ELS, in lpfc_cmpl_plogi_plogi_issue()
1399 if (vport->cfg_fcp_class == 2 && (sp->cls2.classValid)) in lpfc_cmpl_plogi_plogi_issue()
1416 if ((vport->fc_flag & FC_PT2PT) && in lpfc_cmpl_plogi_plogi_issue()
1417 (vport->fc_flag & FC_PT2PT_PLOGI)) { in lpfc_cmpl_plogi_plogi_issue()
1446 lpfc_issue_reg_vfi(vport); in lpfc_cmpl_plogi_plogi_issue()
1450 lpfc_printf_vlog(vport, KERN_ERR, in lpfc_cmpl_plogi_plogi_issue()
1463 mbox->vport = vport; in lpfc_cmpl_plogi_plogi_issue()
1472 lpfc_unreg_rpi(vport, ndlp); in lpfc_cmpl_plogi_plogi_issue()
1476 lpfc_printf_vlog(vport, KERN_ERR, LOG_TRACE_EVENT, in lpfc_cmpl_plogi_plogi_issue()
1486 if (lpfc_reg_rpi(phba, vport->vpi, did, in lpfc_cmpl_plogi_plogi_issue()
1506 mbox->vport = vport; in lpfc_cmpl_plogi_plogi_issue()
1509 lpfc_nlp_set_state(vport, ndlp, in lpfc_cmpl_plogi_plogi_issue()
1520 lpfc_printf_vlog(vport, KERN_ERR, LOG_TRACE_EVENT, in lpfc_cmpl_plogi_plogi_issue()
1528 lpfc_printf_vlog(vport, KERN_ERR, LOG_TRACE_EVENT, in lpfc_cmpl_plogi_plogi_issue()
1538 lpfc_vport_set_state(vport, FC_VPORT_FAILED); in lpfc_cmpl_plogi_plogi_issue()
1539 lpfc_printf_vlog(vport, KERN_ERR, LOG_TRACE_EVENT, in lpfc_cmpl_plogi_plogi_issue()
1549 lpfc_nlp_set_state(vport, ndlp, NLP_STE_NPR_NODE); in lpfc_cmpl_plogi_plogi_issue()
1554 lpfc_cmpl_logo_plogi_issue(struct lpfc_vport *vport, struct lpfc_nodelist *ndlp, in lpfc_cmpl_logo_plogi_issue() argument
1561 lpfc_cmpl_reglogin_plogi_issue(struct lpfc_vport *vport, in lpfc_cmpl_reglogin_plogi_issue() argument
1569 phba = vport->phba; in lpfc_cmpl_reglogin_plogi_issue()
1574 lpfc_release_rpi(phba, vport, ndlp, rpi); in lpfc_cmpl_reglogin_plogi_issue()
1580 lpfc_device_rm_plogi_issue(struct lpfc_vport *vport, struct lpfc_nodelist *ndlp, in lpfc_device_rm_plogi_issue() argument
1590 lpfc_els_abort(vport->phba, ndlp); in lpfc_device_rm_plogi_issue()
1592 lpfc_drop_node(vport, ndlp); in lpfc_device_rm_plogi_issue()
1598 lpfc_device_recov_plogi_issue(struct lpfc_vport *vport, in lpfc_device_recov_plogi_issue() argument
1603 struct lpfc_hba *phba = vport->phba; in lpfc_device_recov_plogi_issue()
1608 if (vport->fc_flag & FC_RSCN_DEFERRED) in lpfc_device_recov_plogi_issue()
1615 lpfc_nlp_set_state(vport, ndlp, NLP_STE_NPR_NODE); in lpfc_device_recov_plogi_issue()
1624 lpfc_rcv_plogi_adisc_issue(struct lpfc_vport *vport, struct lpfc_nodelist *ndlp, in lpfc_rcv_plogi_adisc_issue() argument
1627 struct lpfc_hba *phba = vport->phba; in lpfc_rcv_plogi_adisc_issue()
1635 if (lpfc_rcv_plogi(vport, ndlp, cmdiocb)) { in lpfc_rcv_plogi_adisc_issue()
1640 if (vport->num_disc_nodes) in lpfc_rcv_plogi_adisc_issue()
1641 lpfc_more_adisc(vport); in lpfc_rcv_plogi_adisc_issue()
1646 lpfc_issue_els_plogi(vport, ndlp->nlp_DID, 0); in lpfc_rcv_plogi_adisc_issue()
1647 lpfc_nlp_set_state(vport, ndlp, NLP_STE_PLOGI_ISSUE); in lpfc_rcv_plogi_adisc_issue()
1653 lpfc_rcv_prli_adisc_issue(struct lpfc_vport *vport, struct lpfc_nodelist *ndlp, in lpfc_rcv_prli_adisc_issue() argument
1658 if (lpfc_rcv_prli_support_check(vport, ndlp, cmdiocb)) in lpfc_rcv_prli_adisc_issue()
1659 lpfc_els_rsp_prli_acc(vport, cmdiocb, ndlp); in lpfc_rcv_prli_adisc_issue()
1664 lpfc_rcv_logo_adisc_issue(struct lpfc_vport *vport, struct lpfc_nodelist *ndlp, in lpfc_rcv_logo_adisc_issue() argument
1667 struct lpfc_hba *phba = vport->phba; in lpfc_rcv_logo_adisc_issue()
1675 lpfc_rcv_logo(vport, ndlp, cmdiocb, ELS_CMD_LOGO); in lpfc_rcv_logo_adisc_issue()
1680 lpfc_rcv_padisc_adisc_issue(struct lpfc_vport *vport, in lpfc_rcv_padisc_adisc_issue() argument
1688 lpfc_rcv_padisc(vport, ndlp, cmdiocb); in lpfc_rcv_padisc_adisc_issue()
1693 lpfc_rcv_prlo_adisc_issue(struct lpfc_vport *vport, struct lpfc_nodelist *ndlp, in lpfc_rcv_prlo_adisc_issue() argument
1701 lpfc_rcv_logo(vport, ndlp, cmdiocb, ELS_CMD_PRLO); in lpfc_rcv_prlo_adisc_issue()
1706 lpfc_cmpl_adisc_adisc_issue(struct lpfc_vport *vport, in lpfc_cmpl_adisc_adisc_issue() argument
1710 struct lpfc_hba *phba = vport->phba; in lpfc_cmpl_adisc_adisc_issue()
1724 (!lpfc_check_adisc(vport, ndlp, &ap->nodeName, &ap->portName))) { in lpfc_cmpl_adisc_adisc_issue()
1734 lpfc_nlp_set_state(vport, ndlp, NLP_STE_NPR_NODE); in lpfc_cmpl_adisc_adisc_issue()
1735 lpfc_unreg_rpi(vport, ndlp); in lpfc_cmpl_adisc_adisc_issue()
1756 lpfc_nlp_set_state(vport, ndlp, NLP_STE_MAPPED_NODE); in lpfc_cmpl_adisc_adisc_issue()
1759 lpfc_nlp_set_state(vport, ndlp, NLP_STE_UNMAPPED_NODE); in lpfc_cmpl_adisc_adisc_issue()
1766 lpfc_device_rm_adisc_issue(struct lpfc_vport *vport, struct lpfc_nodelist *ndlp, in lpfc_device_rm_adisc_issue() argument
1776 lpfc_els_abort(vport->phba, ndlp); in lpfc_device_rm_adisc_issue()
1778 lpfc_drop_node(vport, ndlp); in lpfc_device_rm_adisc_issue()
1784 lpfc_device_recov_adisc_issue(struct lpfc_vport *vport, in lpfc_device_recov_adisc_issue() argument
1789 struct lpfc_hba *phba = vport->phba; in lpfc_device_recov_adisc_issue()
1794 if (vport->fc_flag & FC_RSCN_DEFERRED) in lpfc_device_recov_adisc_issue()
1801 lpfc_nlp_set_state(vport, ndlp, NLP_STE_NPR_NODE); in lpfc_device_recov_adisc_issue()
1805 lpfc_disc_set_adisc(vport, ndlp); in lpfc_device_recov_adisc_issue()
1810 lpfc_rcv_plogi_reglogin_issue(struct lpfc_vport *vport, in lpfc_rcv_plogi_reglogin_issue() argument
1817 lpfc_rcv_plogi(vport, ndlp, cmdiocb); in lpfc_rcv_plogi_reglogin_issue()
1822 lpfc_rcv_prli_reglogin_issue(struct lpfc_vport *vport, in lpfc_rcv_prli_reglogin_issue() argument
1830 if (!lpfc_rcv_prli_support_check(vport, ndlp, cmdiocb)) { in lpfc_rcv_prli_reglogin_issue()
1833 if (vport->phba->nvmet_support) { in lpfc_rcv_prli_reglogin_issue()
1839 lpfc_rcv_prli(vport, ndlp, cmdiocb); in lpfc_rcv_prli_reglogin_issue()
1840 lpfc_els_rsp_prli_acc(vport, cmdiocb, ndlp); in lpfc_rcv_prli_reglogin_issue()
1849 lpfc_els_rsp_reject(vport, stat.un.lsRjtError, cmdiocb, in lpfc_rcv_prli_reglogin_issue()
1855 lpfc_els_rsp_prli_acc(vport, cmdiocb, ndlp); in lpfc_rcv_prli_reglogin_issue()
1861 lpfc_rcv_logo_reglogin_issue(struct lpfc_vport *vport, in lpfc_rcv_logo_reglogin_issue() argument
1866 struct lpfc_hba *phba = vport->phba; in lpfc_rcv_logo_reglogin_issue()
1897 lpfc_rcv_logo(vport, ndlp, cmdiocb, ELS_CMD_LOGO); in lpfc_rcv_logo_reglogin_issue()
1902 lpfc_rcv_padisc_reglogin_issue(struct lpfc_vport *vport, in lpfc_rcv_padisc_reglogin_issue() argument
1909 lpfc_rcv_padisc(vport, ndlp, cmdiocb); in lpfc_rcv_padisc_reglogin_issue()
1914 lpfc_rcv_prlo_reglogin_issue(struct lpfc_vport *vport, in lpfc_rcv_prlo_reglogin_issue() argument
1922 lpfc_els_rsp_acc(vport, ELS_CMD_PRLO, cmdiocb, ndlp, NULL); in lpfc_rcv_prlo_reglogin_issue()
1927 lpfc_cmpl_reglogin_reglogin_issue(struct lpfc_vport *vport, in lpfc_cmpl_reglogin_reglogin_issue() argument
1932 struct lpfc_hba *phba = vport->phba; in lpfc_cmpl_reglogin_reglogin_issue()
1939 lpfc_printf_vlog(vport, KERN_ERR, LOG_TRACE_EVENT, in lpfc_cmpl_reglogin_reglogin_issue()
1942 did, mb->mbxStatus, vport->port_state, in lpfc_cmpl_reglogin_reglogin_issue()
1951 lpfc_nlp_set_state(vport, ndlp, NLP_STE_NPR_NODE); in lpfc_cmpl_reglogin_reglogin_issue()
1963 lpfc_issue_els_logo(vport, ndlp, 0); in lpfc_cmpl_reglogin_reglogin_issue()
1974 lpfc_printf_vlog(vport, KERN_INFO, LOG_DISCOVERY, in lpfc_cmpl_reglogin_reglogin_issue()
1984 if (vport->fc_flag & FC_PT2PT) { in lpfc_cmpl_reglogin_reglogin_issue()
1990 if ((!(vport->fc_flag & FC_PT2PT_NO_NVME)) && in lpfc_cmpl_reglogin_reglogin_issue()
1991 (vport->cfg_enable_fc4_type == LPFC_ENABLE_BOTH || in lpfc_cmpl_reglogin_reglogin_issue()
1992 vport->cfg_enable_fc4_type == LPFC_ENABLE_NVME)) { in lpfc_cmpl_reglogin_reglogin_issue()
1995 lpfc_nvme_update_localport(vport); in lpfc_cmpl_reglogin_reglogin_issue()
2006 if (vport->cfg_enable_fc4_type != LPFC_ENABLE_FCP) { in lpfc_cmpl_reglogin_reglogin_issue()
2007 lpfc_ns_cmd(vport, SLI_CTNS_GFT_ID, 0, in lpfc_cmpl_reglogin_reglogin_issue()
2015 lpfc_nlp_set_state(vport, ndlp, NLP_STE_PRLI_ISSUE); in lpfc_cmpl_reglogin_reglogin_issue()
2016 if (lpfc_issue_els_prli(vport, ndlp, 0)) { in lpfc_cmpl_reglogin_reglogin_issue()
2017 lpfc_issue_els_logo(vport, ndlp, 0); in lpfc_cmpl_reglogin_reglogin_issue()
2019 lpfc_nlp_set_state(vport, ndlp, NLP_STE_NPR_NODE); in lpfc_cmpl_reglogin_reglogin_issue()
2022 if ((vport->fc_flag & FC_PT2PT) && phba->nvmet_support) in lpfc_cmpl_reglogin_reglogin_issue()
2023 phba->targetport->port_id = vport->fc_myDID; in lpfc_cmpl_reglogin_reglogin_issue()
2031 lpfc_nlp_set_state(vport, ndlp, NLP_STE_UNMAPPED_NODE); in lpfc_cmpl_reglogin_reglogin_issue()
2038 lpfc_device_rm_reglogin_issue(struct lpfc_vport *vport, in lpfc_device_rm_reglogin_issue() argument
2049 lpfc_drop_node(vport, ndlp); in lpfc_device_rm_reglogin_issue()
2055 lpfc_device_recov_reglogin_issue(struct lpfc_vport *vport, in lpfc_device_recov_reglogin_issue() argument
2063 if (vport->fc_flag & FC_RSCN_DEFERRED) in lpfc_device_recov_reglogin_issue()
2067 lpfc_nlp_set_state(vport, ndlp, NLP_STE_NPR_NODE); in lpfc_device_recov_reglogin_issue()
2074 !vport->phba->nvmet_support) in lpfc_device_recov_reglogin_issue()
2079 lpfc_disc_set_adisc(vport, ndlp); in lpfc_device_recov_reglogin_issue()
2084 lpfc_rcv_plogi_prli_issue(struct lpfc_vport *vport, struct lpfc_nodelist *ndlp, in lpfc_rcv_plogi_prli_issue() argument
2091 lpfc_rcv_plogi(vport, ndlp, cmdiocb); in lpfc_rcv_plogi_prli_issue()
2096 lpfc_rcv_prli_prli_issue(struct lpfc_vport *vport, struct lpfc_nodelist *ndlp, in lpfc_rcv_prli_prli_issue() argument
2101 if (!lpfc_rcv_prli_support_check(vport, ndlp, cmdiocb)) in lpfc_rcv_prli_prli_issue()
2103 lpfc_rcv_prli(vport, ndlp, cmdiocb); in lpfc_rcv_prli_prli_issue()
2104 lpfc_els_rsp_prli_acc(vport, cmdiocb, ndlp); in lpfc_rcv_prli_prli_issue()
2109 lpfc_rcv_logo_prli_issue(struct lpfc_vport *vport, struct lpfc_nodelist *ndlp, in lpfc_rcv_logo_prli_issue() argument
2115 lpfc_els_abort(vport->phba, ndlp); in lpfc_rcv_logo_prli_issue()
2117 lpfc_rcv_logo(vport, ndlp, cmdiocb, ELS_CMD_LOGO); in lpfc_rcv_logo_prli_issue()
2122 lpfc_rcv_padisc_prli_issue(struct lpfc_vport *vport, struct lpfc_nodelist *ndlp, in lpfc_rcv_padisc_prli_issue() argument
2127 lpfc_rcv_padisc(vport, ndlp, cmdiocb); in lpfc_rcv_padisc_prli_issue()
2137 lpfc_rcv_prlo_prli_issue(struct lpfc_vport *vport, struct lpfc_nodelist *ndlp, in lpfc_rcv_prlo_prli_issue() argument
2142 lpfc_els_rsp_acc(vport, ELS_CMD_PRLO, cmdiocb, ndlp, NULL); in lpfc_rcv_prlo_prli_issue()
2147 lpfc_cmpl_prli_prli_issue(struct lpfc_vport *vport, struct lpfc_nodelist *ndlp, in lpfc_cmpl_prli_prli_issue() argument
2151 struct lpfc_hba *phba = vport->phba; in lpfc_cmpl_prli_prli_issue()
2176 if ((vport->port_type == LPFC_NPIV_PORT) && in lpfc_cmpl_prli_prli_issue()
2177 vport->cfg_restrict_login) { in lpfc_cmpl_prli_prli_issue()
2192 lpfc_printf_vlog(vport, KERN_INFO, in lpfc_cmpl_prli_prli_issue()
2269 lpfc_printf_vlog(vport, KERN_INFO, LOG_NVME_DISC, in lpfc_cmpl_prli_prli_issue()
2280 (vport->port_type == LPFC_NPIV_PORT) && in lpfc_cmpl_prli_prli_issue()
2281 vport->cfg_restrict_login) { in lpfc_cmpl_prli_prli_issue()
2286 lpfc_issue_els_logo(vport, ndlp, 0); in lpfc_cmpl_prli_prli_issue()
2289 lpfc_nlp_set_state(vport, ndlp, NLP_STE_NPR_NODE); in lpfc_cmpl_prli_prli_issue()
2300 lpfc_nlp_set_state(vport, ndlp, NLP_STE_MAPPED_NODE); in lpfc_cmpl_prli_prli_issue()
2303 lpfc_nlp_set_state(vport, ndlp, NLP_STE_UNMAPPED_NODE); in lpfc_cmpl_prli_prli_issue()
2305 lpfc_printf_vlog(vport, in lpfc_cmpl_prli_prli_issue()
2334 lpfc_device_rm_prli_issue(struct lpfc_vport *vport, struct lpfc_nodelist *ndlp, in lpfc_device_rm_prli_issue() argument
2344 lpfc_els_abort(vport->phba, ndlp); in lpfc_device_rm_prli_issue()
2346 lpfc_drop_node(vport, ndlp); in lpfc_device_rm_prli_issue()
2369 lpfc_device_recov_prli_issue(struct lpfc_vport *vport, in lpfc_device_recov_prli_issue() argument
2374 struct lpfc_hba *phba = vport->phba; in lpfc_device_recov_prli_issue()
2379 if (vport->fc_flag & FC_RSCN_DEFERRED) in lpfc_device_recov_prli_issue()
2386 lpfc_nlp_set_state(vport, ndlp, NLP_STE_NPR_NODE); in lpfc_device_recov_prli_issue()
2390 lpfc_disc_set_adisc(vport, ndlp); in lpfc_device_recov_prli_issue()
2395 lpfc_rcv_plogi_logo_issue(struct lpfc_vport *vport, struct lpfc_nodelist *ndlp, in lpfc_rcv_plogi_logo_issue() argument
2404 lpfc_els_rsp_reject(vport, stat.un.lsRjtError, cmdiocb, ndlp, NULL); in lpfc_rcv_plogi_logo_issue()
2409 lpfc_rcv_prli_logo_issue(struct lpfc_vport *vport, struct lpfc_nodelist *ndlp, in lpfc_rcv_prli_logo_issue() argument
2418 lpfc_els_rsp_reject(vport, stat.un.lsRjtError, cmdiocb, ndlp, NULL); in lpfc_rcv_prli_logo_issue()
2423 lpfc_rcv_logo_logo_issue(struct lpfc_vport *vport, struct lpfc_nodelist *ndlp, in lpfc_rcv_logo_logo_issue() argument
2431 lpfc_els_rsp_acc(vport, ELS_CMD_ACC, cmdiocb, ndlp, NULL); in lpfc_rcv_logo_logo_issue()
2436 lpfc_rcv_padisc_logo_issue(struct lpfc_vport *vport, struct lpfc_nodelist *ndlp, in lpfc_rcv_padisc_logo_issue() argument
2445 lpfc_els_rsp_reject(vport, stat.un.lsRjtError, cmdiocb, ndlp, NULL); in lpfc_rcv_padisc_logo_issue()
2450 lpfc_rcv_prlo_logo_issue(struct lpfc_vport *vport, struct lpfc_nodelist *ndlp, in lpfc_rcv_prlo_logo_issue() argument
2459 lpfc_els_rsp_reject(vport, stat.un.lsRjtError, cmdiocb, ndlp, NULL); in lpfc_rcv_prlo_logo_issue()
2464 lpfc_cmpl_logo_logo_issue(struct lpfc_vport *vport, struct lpfc_nodelist *ndlp, in lpfc_cmpl_logo_logo_issue() argument
2468 lpfc_nlp_set_state(vport, ndlp, NLP_STE_NPR_NODE); in lpfc_cmpl_logo_logo_issue()
2472 lpfc_disc_set_adisc(vport, ndlp); in lpfc_cmpl_logo_logo_issue()
2477 lpfc_device_rm_logo_issue(struct lpfc_vport *vport, struct lpfc_nodelist *ndlp, in lpfc_device_rm_logo_issue() argument
2485 lpfc_unreg_rpi(vport, ndlp); in lpfc_device_rm_logo_issue()
2487 lpfc_els_abort(vport->phba, ndlp); in lpfc_device_rm_logo_issue()
2488 lpfc_drop_node(vport, ndlp); in lpfc_device_rm_logo_issue()
2493 lpfc_device_recov_logo_issue(struct lpfc_vport *vport, in lpfc_device_recov_logo_issue() argument
2506 lpfc_rcv_plogi_unmap_node(struct lpfc_vport *vport, struct lpfc_nodelist *ndlp, in lpfc_rcv_plogi_unmap_node() argument
2511 lpfc_rcv_plogi(vport, ndlp, cmdiocb); in lpfc_rcv_plogi_unmap_node()
2516 lpfc_rcv_prli_unmap_node(struct lpfc_vport *vport, struct lpfc_nodelist *ndlp, in lpfc_rcv_prli_unmap_node() argument
2521 if (!lpfc_rcv_prli_support_check(vport, ndlp, cmdiocb)) in lpfc_rcv_prli_unmap_node()
2524 lpfc_rcv_prli(vport, ndlp, cmdiocb); in lpfc_rcv_prli_unmap_node()
2525 lpfc_els_rsp_prli_acc(vport, cmdiocb, ndlp); in lpfc_rcv_prli_unmap_node()
2530 lpfc_rcv_logo_unmap_node(struct lpfc_vport *vport, struct lpfc_nodelist *ndlp, in lpfc_rcv_logo_unmap_node() argument
2535 lpfc_rcv_logo(vport, ndlp, cmdiocb, ELS_CMD_LOGO); in lpfc_rcv_logo_unmap_node()
2540 lpfc_rcv_padisc_unmap_node(struct lpfc_vport *vport, struct lpfc_nodelist *ndlp, in lpfc_rcv_padisc_unmap_node() argument
2545 lpfc_rcv_padisc(vport, ndlp, cmdiocb); in lpfc_rcv_padisc_unmap_node()
2550 lpfc_rcv_prlo_unmap_node(struct lpfc_vport *vport, struct lpfc_nodelist *ndlp, in lpfc_rcv_prlo_unmap_node() argument
2555 lpfc_els_rsp_acc(vport, ELS_CMD_PRLO, cmdiocb, ndlp, NULL); in lpfc_rcv_prlo_unmap_node()
2560 lpfc_device_rm_unmap_node(struct lpfc_vport *vport, in lpfc_device_rm_unmap_node() argument
2565 lpfc_drop_node(vport, ndlp); in lpfc_device_rm_unmap_node()
2570 lpfc_device_recov_unmap_node(struct lpfc_vport *vport, in lpfc_device_recov_unmap_node() argument
2576 lpfc_nlp_set_state(vport, ndlp, NLP_STE_NPR_NODE); in lpfc_device_recov_unmap_node()
2581 lpfc_disc_set_adisc(vport, ndlp); in lpfc_device_recov_unmap_node()
2587 lpfc_rcv_plogi_mapped_node(struct lpfc_vport *vport, struct lpfc_nodelist *ndlp, in lpfc_rcv_plogi_mapped_node() argument
2592 lpfc_rcv_plogi(vport, ndlp, cmdiocb); in lpfc_rcv_plogi_mapped_node()
2597 lpfc_rcv_prli_mapped_node(struct lpfc_vport *vport, struct lpfc_nodelist *ndlp, in lpfc_rcv_prli_mapped_node() argument
2602 if (!lpfc_rcv_prli_support_check(vport, ndlp, cmdiocb)) in lpfc_rcv_prli_mapped_node()
2604 lpfc_els_rsp_prli_acc(vport, cmdiocb, ndlp); in lpfc_rcv_prli_mapped_node()
2609 lpfc_rcv_logo_mapped_node(struct lpfc_vport *vport, struct lpfc_nodelist *ndlp, in lpfc_rcv_logo_mapped_node() argument
2614 lpfc_rcv_logo(vport, ndlp, cmdiocb, ELS_CMD_LOGO); in lpfc_rcv_logo_mapped_node()
2619 lpfc_rcv_padisc_mapped_node(struct lpfc_vport *vport, in lpfc_rcv_padisc_mapped_node() argument
2625 lpfc_rcv_padisc(vport, ndlp, cmdiocb); in lpfc_rcv_padisc_mapped_node()
2630 lpfc_rcv_prlo_mapped_node(struct lpfc_vport *vport, struct lpfc_nodelist *ndlp, in lpfc_rcv_prlo_mapped_node() argument
2636 lpfc_sli_abort_iocb(vport, ndlp->nlp_sid, 0, LPFC_CTX_TGT); in lpfc_rcv_prlo_mapped_node()
2642 lpfc_els_rsp_acc(vport, ELS_CMD_PRLO, cmdiocb, ndlp, NULL); in lpfc_rcv_prlo_mapped_node()
2650 lpfc_printf_vlog(vport, KERN_INFO, LOG_NODE | LOG_ELS | LOG_DISCOVERY, in lpfc_rcv_prlo_mapped_node()
2656 lpfc_nlp_set_state(vport, ndlp, NLP_STE_NPR_NODE); in lpfc_rcv_prlo_mapped_node()
2662 lpfc_device_recov_mapped_node(struct lpfc_vport *vport, in lpfc_device_recov_mapped_node() argument
2667 lpfc_disc_set_adisc(vport, ndlp); in lpfc_device_recov_mapped_node()
2670 lpfc_nlp_set_state(vport, ndlp, NLP_STE_NPR_NODE); in lpfc_device_recov_mapped_node()
2679 lpfc_rcv_plogi_npr_node(struct lpfc_vport *vport, struct lpfc_nodelist *ndlp, in lpfc_rcv_plogi_npr_node() argument
2687 if (lpfc_rcv_plogi(vport, ndlp, cmdiocb)) { in lpfc_rcv_plogi_npr_node()
2688 lpfc_cancel_retry_delay_tmo(vport, ndlp); in lpfc_rcv_plogi_npr_node()
2696 lpfc_nlp_set_state(vport, ndlp, NLP_STE_PLOGI_ISSUE); in lpfc_rcv_plogi_npr_node()
2697 lpfc_issue_els_plogi(vport, ndlp->nlp_DID, 0); in lpfc_rcv_plogi_npr_node()
2704 lpfc_rcv_prli_npr_node(struct lpfc_vport *vport, struct lpfc_nodelist *ndlp, in lpfc_rcv_prli_npr_node() argument
2713 lpfc_els_rsp_reject(vport, stat.un.lsRjtError, cmdiocb, ndlp, NULL); in lpfc_rcv_prli_npr_node()
2724 lpfc_nlp_set_state(vport, ndlp, NLP_STE_PLOGI_ISSUE); in lpfc_rcv_prli_npr_node()
2725 lpfc_issue_els_plogi(vport, ndlp->nlp_DID, 0); in lpfc_rcv_prli_npr_node()
2732 lpfc_rcv_logo_npr_node(struct lpfc_vport *vport, struct lpfc_nodelist *ndlp, in lpfc_rcv_logo_npr_node() argument
2737 lpfc_rcv_logo(vport, ndlp, cmdiocb, ELS_CMD_LOGO); in lpfc_rcv_logo_npr_node()
2742 lpfc_rcv_padisc_npr_node(struct lpfc_vport *vport, struct lpfc_nodelist *ndlp, in lpfc_rcv_padisc_npr_node() argument
2747 lpfc_rcv_padisc(vport, ndlp, cmdiocb); in lpfc_rcv_padisc_npr_node()
2763 lpfc_nlp_set_state(vport, ndlp, NLP_STE_PLOGI_ISSUE); in lpfc_rcv_padisc_npr_node()
2764 lpfc_issue_els_plogi(vport, ndlp->nlp_DID, 0); in lpfc_rcv_padisc_npr_node()
2771 lpfc_rcv_prlo_npr_node(struct lpfc_vport *vport, struct lpfc_nodelist *ndlp, in lpfc_rcv_prlo_npr_node() argument
2780 lpfc_els_rsp_acc(vport, ELS_CMD_ACC, cmdiocb, ndlp, NULL); in lpfc_rcv_prlo_npr_node()
2799 lpfc_cmpl_plogi_npr_node(struct lpfc_vport *vport, struct lpfc_nodelist *ndlp, in lpfc_cmpl_plogi_npr_node() argument
2802 struct lpfc_hba *phba = vport->phba; in lpfc_cmpl_plogi_npr_node()
2818 lpfc_cmpl_prli_npr_node(struct lpfc_vport *vport, struct lpfc_nodelist *ndlp, in lpfc_cmpl_prli_npr_node() argument
2821 struct lpfc_hba *phba = vport->phba; in lpfc_cmpl_prli_npr_node()
2831 lpfc_drop_node(vport, ndlp); in lpfc_cmpl_prli_npr_node()
2838 lpfc_cmpl_logo_npr_node(struct lpfc_vport *vport, struct lpfc_nodelist *ndlp, in lpfc_cmpl_logo_npr_node() argument
2841 struct Scsi_Host *shost = lpfc_shost_from_vport(vport); in lpfc_cmpl_logo_npr_node()
2846 vport->fc_flag &= ~(FC_FABRIC | FC_PUBLIC_LOOP); in lpfc_cmpl_logo_npr_node()
2849 lpfc_unreg_rpi(vport, ndlp); in lpfc_cmpl_logo_npr_node()
2854 lpfc_cmpl_adisc_npr_node(struct lpfc_vport *vport, struct lpfc_nodelist *ndlp, in lpfc_cmpl_adisc_npr_node() argument
2857 struct lpfc_hba *phba = vport->phba; in lpfc_cmpl_adisc_npr_node()
2867 lpfc_drop_node(vport, ndlp); in lpfc_cmpl_adisc_npr_node()
2874 lpfc_cmpl_reglogin_npr_node(struct lpfc_vport *vport, in lpfc_cmpl_reglogin_npr_node() argument
2883 if (vport->phba->sli_rev < LPFC_SLI_REV4) in lpfc_cmpl_reglogin_npr_node()
2887 lpfc_unreg_rpi(vport, ndlp); in lpfc_cmpl_reglogin_npr_node()
2891 lpfc_drop_node(vport, ndlp); in lpfc_cmpl_reglogin_npr_node()
2899 lpfc_device_rm_npr_node(struct lpfc_vport *vport, struct lpfc_nodelist *ndlp, in lpfc_device_rm_npr_node() argument
2908 lpfc_drop_node(vport, ndlp); in lpfc_device_rm_npr_node()
2913 lpfc_device_recov_npr_node(struct lpfc_vport *vport, struct lpfc_nodelist *ndlp, in lpfc_device_recov_npr_node() argument
2919 if (vport->fc_flag & FC_RSCN_DEFERRED) in lpfc_device_recov_npr_node()
2922 lpfc_cancel_retry_delay_tmo(vport, ndlp); in lpfc_device_recov_npr_node()
3118 lpfc_disc_state_machine(struct lpfc_vport *vport, struct lpfc_nodelist *ndlp, in lpfc_disc_state_machine() argument
3135 lpfc_printf_vlog(vport, KERN_INFO, LOG_DISCOVERY, in lpfc_disc_state_machine()
3141 lpfc_debugfs_disc_trc(vport, LPFC_DISC_TRC_DSM, in lpfc_disc_state_machine()
3146 rc = (func) (vport, ndlp, arg, evt); in lpfc_disc_state_machine()
3152 lpfc_printf_vlog(vport, KERN_INFO, LOG_DISCOVERY, in lpfc_disc_state_machine()
3158 lpfc_debugfs_disc_trc(vport, LPFC_DISC_TRC_DSM, in lpfc_disc_state_machine()
3164 lpfc_printf_vlog(vport, KERN_INFO, LOG_DISCOVERY, in lpfc_disc_state_machine()
3167 lpfc_debugfs_disc_trc(vport, LPFC_DISC_TRC_DSM, in lpfc_disc_state_machine()