Lines Matching refs:vport

64 lpfc_check_adisc(struct lpfc_vport *vport, struct lpfc_nodelist *ndlp,  in lpfc_check_adisc()  argument
85 lpfc_check_sparm(struct lpfc_vport *vport, struct lpfc_nodelist *ndlp, in lpfc_check_sparm() argument
88 volatile struct serv_parm *hsp = &vport->fc_sparam; in lpfc_check_sparm()
167 lpfc_printf_vlog(vport, KERN_ERR, LOG_TRACE_EVENT, in lpfc_check_sparm()
240 lpfc_printf_vlog(ndlp->vport, KERN_INFO, LOG_DISCOVERY, in lpfc_els_abort()
332 rc = lpfc_els_rsp_acc(login_mbox->vport, ELS_CMD_PLOGI, in lpfc_defer_plogi_acc()
348 lpfc_rcv_plogi(struct lpfc_vport *vport, struct lpfc_nodelist *ndlp, in lpfc_rcv_plogi() argument
351 struct lpfc_hba *phba = vport->phba; in lpfc_rcv_plogi()
372 lpfc_printf_vlog(vport, KERN_ERR, LOG_TRACE_EVENT, in lpfc_rcv_plogi()
376 lpfc_els_rsp_reject(vport, stat.un.lsRjtError, cmdiocb, ndlp, in lpfc_rcv_plogi()
381 lpfc_printf_vlog(vport, KERN_ERR, LOG_TRACE_EVENT, in lpfc_rcv_plogi()
385 lpfc_els_rsp_reject(vport, stat.un.lsRjtError, cmdiocb, ndlp, in lpfc_rcv_plogi()
391 if ((lpfc_check_sparm(vport, ndlp, sp, CLASS3, 0) == 0)) { in lpfc_rcv_plogi()
395 lpfc_els_rsp_reject(vport, stat.un.lsRjtError, cmdiocb, ndlp, in lpfc_rcv_plogi()
406 lpfc_printf_vlog(vport, KERN_INFO, LOG_ELS, in lpfc_rcv_plogi()
410 ndlp->nlp_rpi, vport->port_state, in lpfc_rcv_plogi()
411 vport->fc_flag); in lpfc_rcv_plogi()
413 if (vport->cfg_fcp_class == 2 && sp->cls2.classValid) in lpfc_rcv_plogi()
454 lpfc_els_rsp_acc(vport, ELS_CMD_PLOGI, cmdiocb, in lpfc_rcv_plogi()
460 lpfc_printf_vlog(vport, KERN_INFO, LOG_ELS, in lpfc_rcv_plogi()
475 lpfc_nlp_set_state(vport, ndlp, NLP_STE_NPR_NODE); in lpfc_rcv_plogi()
490 if (test_bit(FC_PT2PT, &vport->fc_flag) && in lpfc_rcv_plogi()
491 !test_bit(FC_PT2PT_PLOGI, &vport->fc_flag)) { in lpfc_rcv_plogi()
494 vport->fc_myDID = bf_get(els_rsp64_sid, in lpfc_rcv_plogi()
497 vport->fc_myDID = icmd->un.rcvels.parmRo; in lpfc_rcv_plogi()
530 lpfc_issue_reg_vfi(vport); in lpfc_rcv_plogi()
538 link_mbox->vport = vport; in lpfc_rcv_plogi()
552 lpfc_can_disctmo(vport); in lpfc_rcv_plogi()
578 lpfc_unreg_rpi(vport, ndlp); in lpfc_rcv_plogi()
587 rc = lpfc_reg_rpi(phba, vport->vpi, remote_did, in lpfc_rcv_plogi()
593 login_mbox->vport = vport; in lpfc_rcv_plogi()
606 test_bit(FC_FABRIC, &vport->fc_flag)) { in lpfc_rcv_plogi()
611 if ((vport->port_type == LPFC_NPIV_PORT && in lpfc_rcv_plogi()
612 vport->cfg_restrict_login)) { in lpfc_rcv_plogi()
638 rc = lpfc_els_rsp_reject(vport, stat.un.lsRjtError, cmdiocb, in lpfc_rcv_plogi()
678 lpfc_nlp_set_state(vport, ndlp, NLP_STE_REG_LOGIN_ISSUE); in lpfc_rcv_plogi()
688 lpfc_els_rsp_reject(vport, stat.un.lsRjtError, cmdiocb, ndlp, NULL); in lpfc_rcv_plogi()
703 struct lpfc_vport *vport; in lpfc_mbx_cmpl_resume_rpi() local
710 vport = mboxq->vport; in lpfc_mbx_cmpl_resume_rpi()
714 lpfc_els_rsp_adisc_acc(vport, elsiocb, ndlp); in lpfc_mbx_cmpl_resume_rpi()
716 lpfc_els_rsp_acc(vport, ELS_CMD_PLOGI, elsiocb, in lpfc_mbx_cmpl_resume_rpi()
728 lpfc_rcv_padisc(struct lpfc_vport *vport, struct lpfc_nodelist *ndlp, in lpfc_rcv_padisc() argument
731 struct lpfc_hba *phba = vport->phba; in lpfc_rcv_padisc()
756 lpfc_check_adisc(vport, ndlp, pnn, ppn)) { in lpfc_rcv_padisc()
763 if (vport->phba->sli_rev == LPFC_SLI_REV4) { in lpfc_rcv_padisc()
783 lpfc_els_rsp_adisc_acc(vport, cmdiocb, ndlp); in lpfc_rcv_padisc()
785 lpfc_els_rsp_acc(vport, ELS_CMD_PLOGI, cmdiocb, in lpfc_rcv_padisc()
801 lpfc_nlp_set_state(vport, ndlp, in lpfc_rcv_padisc()
812 lpfc_els_rsp_reject(vport, stat.un.lsRjtError, cmdiocb, ndlp, NULL); in lpfc_rcv_padisc()
822 lpfc_nlp_set_state(vport, ndlp, NLP_STE_NPR_NODE); in lpfc_rcv_padisc()
827 lpfc_rcv_logo(struct lpfc_vport *vport, struct lpfc_nodelist *ndlp, in lpfc_rcv_logo() argument
830 struct lpfc_hba *phba = vport->phba; in lpfc_rcv_logo()
842 lpfc_els_rsp_acc(vport, ELS_CMD_PRLO, cmdiocb, ndlp, NULL); in lpfc_rcv_logo()
844 lpfc_els_rsp_acc(vport, ELS_CMD_ACC, cmdiocb, ndlp, NULL); in lpfc_rcv_logo()
861 if (vport->port_state <= LPFC_FDISC || in lpfc_rcv_logo()
862 test_bit(FC_PT2PT, &vport->fc_flag)) in lpfc_rcv_logo()
864 lpfc_linkdown_port(vport); in lpfc_rcv_logo()
865 set_bit(FC_VPORT_LOGO_RCVD, &vport->fc_flag); in lpfc_rcv_logo()
885 if (!test_bit(FC_UNLOADING, &vport->load_flag) && in lpfc_rcv_logo()
897 vport->port_state = LPFC_FDISC; in lpfc_rcv_logo()
903 lpfc_printf_vlog(vport, KERN_INFO, in lpfc_rcv_logo()
908 ndlp->nlp_type, vport->fc_flag); in lpfc_rcv_logo()
913 test_bit(FC_PT2PT, &vport->fc_flag))) || in lpfc_rcv_logo()
922 lpfc_printf_vlog(vport, KERN_INFO, in lpfc_rcv_logo()
933 lpfc_nlp_unreg_node(vport, ndlp); in lpfc_rcv_logo()
936 lpfc_nlp_set_state(vport, ndlp, NLP_STE_NPR_NODE); in lpfc_rcv_logo()
950 lpfc_rcv_prli_support_check(struct lpfc_vport *vport, in lpfc_rcv_prli_support_check() argument
963 if (vport->phba->nvmet_support) { in lpfc_rcv_prli_support_check()
969 if (!vport->nvmei_support && (cmd == ELS_CMD_NVMEPRLI)) in lpfc_rcv_prli_support_check()
973 if (vport->port_type == LPFC_NPIV_PORT && in lpfc_rcv_prli_support_check()
979 lpfc_printf_vlog(vport, KERN_WARNING, LOG_DISCOVERY, in lpfc_rcv_prli_support_check()
984 ndlp->nlp_flag, vport->port_type, in lpfc_rcv_prli_support_check()
989 lpfc_els_rsp_reject(vport, stat.un.lsRjtError, cmdiocb, in lpfc_rcv_prli_support_check()
995 lpfc_rcv_prli(struct lpfc_vport *vport, struct lpfc_nodelist *ndlp, in lpfc_rcv_prli() argument
998 struct lpfc_hba *phba = vport->phba; in lpfc_rcv_prli()
1041 lpfc_nlp_set_state(vport, ndlp, NLP_STE_UNMAPPED_NODE); in lpfc_rcv_prli()
1059 lpfc_debugfs_disc_trc(vport, LPFC_DISC_TRC_RPORT, in lpfc_rcv_prli()
1063 if (vport->cfg_enable_fc4_type != LPFC_ENABLE_NVME) in lpfc_rcv_prli()
1069 lpfc_disc_set_adisc(struct lpfc_vport *vport, struct lpfc_nodelist *ndlp) in lpfc_disc_set_adisc() argument
1078 if (!test_bit(FC_PT2PT, &vport->fc_flag)) { in lpfc_disc_set_adisc()
1080 if (vport->cfg_use_adisc && in lpfc_disc_set_adisc()
1081 (test_bit(FC_RSCN_MODE, &vport->fc_flag) || in lpfc_disc_set_adisc()
1094 lpfc_unreg_rpi(vport, ndlp); in lpfc_disc_set_adisc()
1109 lpfc_release_rpi(struct lpfc_hba *phba, struct lpfc_vport *vport, in lpfc_release_rpi() argument
1119 lpfc_printf_vlog(vport, KERN_INFO, LOG_DISCOVERY, in lpfc_release_rpi()
1132 lpfc_printf_vlog(vport, KERN_ERR, LOG_TRACE_EVENT, in lpfc_release_rpi()
1135 lpfc_unreg_login(phba, vport->vpi, rpi, pmb); in lpfc_release_rpi()
1137 pmb->vport = vport; in lpfc_release_rpi()
1145 (!test_bit(FC_OFFLINE_MODE, &vport->fc_flag))) in lpfc_release_rpi()
1148 lpfc_printf_vlog(vport, KERN_INFO, LOG_DISCOVERY, in lpfc_release_rpi()
1162 lpfc_disc_illegal(struct lpfc_vport *vport, struct lpfc_nodelist *ndlp, in lpfc_disc_illegal() argument
1169 phba = vport->phba; in lpfc_disc_illegal()
1174 lpfc_release_rpi(phba, vport, ndlp, rpi); in lpfc_disc_illegal()
1176 lpfc_printf_vlog(vport, KERN_ERR, LOG_TRACE_EVENT, in lpfc_disc_illegal()
1185 lpfc_cmpl_plogi_illegal(struct lpfc_vport *vport, struct lpfc_nodelist *ndlp, in lpfc_cmpl_plogi_illegal() argument
1194 lpfc_printf_vlog(vport, KERN_ERR, LOG_TRACE_EVENT, in lpfc_cmpl_plogi_illegal()
1206 lpfc_rcv_plogi_unused_node(struct lpfc_vport *vport, struct lpfc_nodelist *ndlp, in lpfc_rcv_plogi_unused_node() argument
1213 if (lpfc_rcv_plogi(vport, ndlp, cmdiocb)) { in lpfc_rcv_plogi_unused_node()
1220 lpfc_rcv_els_unused_node(struct lpfc_vport *vport, struct lpfc_nodelist *ndlp, in lpfc_rcv_els_unused_node() argument
1223 lpfc_issue_els_logo(vport, ndlp, 0); in lpfc_rcv_els_unused_node()
1228 lpfc_rcv_logo_unused_node(struct lpfc_vport *vport, struct lpfc_nodelist *ndlp, in lpfc_rcv_logo_unused_node() argument
1236 lpfc_els_rsp_acc(vport, ELS_CMD_ACC, cmdiocb, ndlp, NULL); in lpfc_rcv_logo_unused_node()
1242 lpfc_cmpl_logo_unused_node(struct lpfc_vport *vport, struct lpfc_nodelist *ndlp, in lpfc_cmpl_logo_unused_node() argument
1249 lpfc_device_rm_unused_node(struct lpfc_vport *vport, struct lpfc_nodelist *ndlp, in lpfc_device_rm_unused_node() argument
1256 lpfc_device_recov_unused_node(struct lpfc_vport *vport, in lpfc_device_recov_unused_node() argument
1264 lpfc_rcv_plogi_plogi_issue(struct lpfc_vport *vport, struct lpfc_nodelist *ndlp, in lpfc_rcv_plogi_plogi_issue() argument
1267 struct lpfc_hba *phba = vport->phba; in lpfc_rcv_plogi_plogi_issue()
1281 port_cmp = memcmp(&vport->fc_portname, &sp->portName, in lpfc_rcv_plogi_plogi_issue()
1289 lpfc_els_rsp_reject(vport, stat.un.lsRjtError, cmdiocb, ndlp, in lpfc_rcv_plogi_plogi_issue()
1292 if (lpfc_rcv_plogi(vport, ndlp, cmdiocb) && in lpfc_rcv_plogi_plogi_issue()
1294 (vport->num_disc_nodes)) { in lpfc_rcv_plogi_plogi_issue()
1299 lpfc_more_plogi(vport); in lpfc_rcv_plogi_plogi_issue()
1300 if (vport->num_disc_nodes == 0) { in lpfc_rcv_plogi_plogi_issue()
1301 clear_bit(FC_NDISC_ACTIVE, &vport->fc_flag); in lpfc_rcv_plogi_plogi_issue()
1302 lpfc_can_disctmo(vport); in lpfc_rcv_plogi_plogi_issue()
1303 lpfc_end_rscn(vport); in lpfc_rcv_plogi_plogi_issue()
1312 lpfc_rcv_prli_plogi_issue(struct lpfc_vport *vport, struct lpfc_nodelist *ndlp, in lpfc_rcv_prli_plogi_issue() argument
1321 lpfc_els_rsp_reject(vport, stat.un.lsRjtError, cmdiocb, ndlp, NULL); in lpfc_rcv_prli_plogi_issue()
1326 lpfc_rcv_logo_plogi_issue(struct lpfc_vport *vport, struct lpfc_nodelist *ndlp, in lpfc_rcv_logo_plogi_issue() argument
1332 if (vport->phba->sli_rev == LPFC_SLI_REV3) in lpfc_rcv_logo_plogi_issue()
1335 lpfc_els_abort(vport->phba, ndlp); in lpfc_rcv_logo_plogi_issue()
1337 lpfc_rcv_logo(vport, ndlp, cmdiocb, ELS_CMD_LOGO); in lpfc_rcv_logo_plogi_issue()
1342 lpfc_rcv_els_plogi_issue(struct lpfc_vport *vport, struct lpfc_nodelist *ndlp, in lpfc_rcv_els_plogi_issue() argument
1345 struct lpfc_hba *phba = vport->phba; in lpfc_rcv_els_plogi_issue()
1352 lpfc_els_rsp_acc(vport, ELS_CMD_ACC, cmdiocb, ndlp, NULL); in lpfc_rcv_els_plogi_issue()
1354 lpfc_issue_els_logo(vport, ndlp, 0); in lpfc_rcv_els_plogi_issue()
1364 lpfc_nlp_set_state(vport, ndlp, NLP_STE_NPR_NODE); in lpfc_rcv_els_plogi_issue()
1370 lpfc_cmpl_plogi_plogi_issue(struct lpfc_vport *vport, in lpfc_cmpl_plogi_plogi_issue() argument
1375 struct lpfc_hba *phba = vport->phba; in lpfc_cmpl_plogi_plogi_issue()
1413 lpfc_printf_vlog(vport, KERN_ERR, LOG_TRACE_EVENT, in lpfc_cmpl_plogi_plogi_issue()
1417 if (!lpfc_check_sparm(vport, ndlp, sp, CLASS3, 0)) in lpfc_cmpl_plogi_plogi_issue()
1420 lpfc_printf_vlog(vport, KERN_INFO, LOG_ELS, in lpfc_cmpl_plogi_plogi_issue()
1424 if (vport->cfg_fcp_class == 2 && (sp->cls2.classValid)) in lpfc_cmpl_plogi_plogi_issue()
1441 if (test_bit(FC_PT2PT, &vport->fc_flag) && in lpfc_cmpl_plogi_plogi_issue()
1442 test_bit(FC_PT2PT_PLOGI, &vport->fc_flag)) { in lpfc_cmpl_plogi_plogi_issue()
1471 lpfc_issue_reg_vfi(vport); in lpfc_cmpl_plogi_plogi_issue()
1475 lpfc_printf_vlog(vport, KERN_ERR, in lpfc_cmpl_plogi_plogi_issue()
1488 mbox->vport = vport; in lpfc_cmpl_plogi_plogi_issue()
1497 lpfc_unreg_rpi(vport, ndlp); in lpfc_cmpl_plogi_plogi_issue()
1501 lpfc_printf_vlog(vport, KERN_ERR, LOG_TRACE_EVENT, in lpfc_cmpl_plogi_plogi_issue()
1511 if (lpfc_reg_rpi(phba, vport->vpi, did, in lpfc_cmpl_plogi_plogi_issue()
1531 mbox->vport = vport; in lpfc_cmpl_plogi_plogi_issue()
1534 lpfc_nlp_set_state(vport, ndlp, in lpfc_cmpl_plogi_plogi_issue()
1545 lpfc_printf_vlog(vport, KERN_ERR, LOG_TRACE_EVENT, in lpfc_cmpl_plogi_plogi_issue()
1553 lpfc_printf_vlog(vport, KERN_ERR, LOG_TRACE_EVENT, in lpfc_cmpl_plogi_plogi_issue()
1563 lpfc_vport_set_state(vport, FC_VPORT_FAILED); in lpfc_cmpl_plogi_plogi_issue()
1564 lpfc_printf_vlog(vport, KERN_ERR, LOG_TRACE_EVENT, in lpfc_cmpl_plogi_plogi_issue()
1574 lpfc_nlp_set_state(vport, ndlp, NLP_STE_NPR_NODE); in lpfc_cmpl_plogi_plogi_issue()
1579 lpfc_cmpl_logo_plogi_issue(struct lpfc_vport *vport, struct lpfc_nodelist *ndlp, in lpfc_cmpl_logo_plogi_issue() argument
1586 lpfc_cmpl_reglogin_plogi_issue(struct lpfc_vport *vport, in lpfc_cmpl_reglogin_plogi_issue() argument
1594 phba = vport->phba; in lpfc_cmpl_reglogin_plogi_issue()
1599 lpfc_release_rpi(phba, vport, ndlp, rpi); in lpfc_cmpl_reglogin_plogi_issue()
1605 lpfc_device_rm_plogi_issue(struct lpfc_vport *vport, struct lpfc_nodelist *ndlp, in lpfc_device_rm_plogi_issue() argument
1615 lpfc_els_abort(vport->phba, ndlp); in lpfc_device_rm_plogi_issue()
1617 lpfc_drop_node(vport, ndlp); in lpfc_device_rm_plogi_issue()
1623 lpfc_device_recov_plogi_issue(struct lpfc_vport *vport, in lpfc_device_recov_plogi_issue() argument
1628 struct lpfc_hba *phba = vport->phba; in lpfc_device_recov_plogi_issue()
1631 if (lpfc_check_unload_and_clr_rscn(&vport->fc_flag)) in lpfc_device_recov_plogi_issue()
1638 lpfc_nlp_set_state(vport, ndlp, NLP_STE_NPR_NODE); in lpfc_device_recov_plogi_issue()
1647 lpfc_rcv_plogi_adisc_issue(struct lpfc_vport *vport, struct lpfc_nodelist *ndlp, in lpfc_rcv_plogi_adisc_issue() argument
1650 struct lpfc_hba *phba = vport->phba; in lpfc_rcv_plogi_adisc_issue()
1658 if (lpfc_rcv_plogi(vport, ndlp, cmdiocb)) { in lpfc_rcv_plogi_adisc_issue()
1663 if (vport->num_disc_nodes) in lpfc_rcv_plogi_adisc_issue()
1664 lpfc_more_adisc(vport); in lpfc_rcv_plogi_adisc_issue()
1669 lpfc_issue_els_plogi(vport, ndlp->nlp_DID, 0); in lpfc_rcv_plogi_adisc_issue()
1670 lpfc_nlp_set_state(vport, ndlp, NLP_STE_PLOGI_ISSUE); in lpfc_rcv_plogi_adisc_issue()
1676 lpfc_rcv_prli_adisc_issue(struct lpfc_vport *vport, struct lpfc_nodelist *ndlp, in lpfc_rcv_prli_adisc_issue() argument
1681 if (lpfc_rcv_prli_support_check(vport, ndlp, cmdiocb)) in lpfc_rcv_prli_adisc_issue()
1682 lpfc_els_rsp_prli_acc(vport, cmdiocb, ndlp); in lpfc_rcv_prli_adisc_issue()
1687 lpfc_rcv_logo_adisc_issue(struct lpfc_vport *vport, struct lpfc_nodelist *ndlp, in lpfc_rcv_logo_adisc_issue() argument
1690 struct lpfc_hba *phba = vport->phba; in lpfc_rcv_logo_adisc_issue()
1698 lpfc_rcv_logo(vport, ndlp, cmdiocb, ELS_CMD_LOGO); in lpfc_rcv_logo_adisc_issue()
1703 lpfc_rcv_padisc_adisc_issue(struct lpfc_vport *vport, in lpfc_rcv_padisc_adisc_issue() argument
1711 lpfc_rcv_padisc(vport, ndlp, cmdiocb); in lpfc_rcv_padisc_adisc_issue()
1716 lpfc_rcv_prlo_adisc_issue(struct lpfc_vport *vport, struct lpfc_nodelist *ndlp, in lpfc_rcv_prlo_adisc_issue() argument
1724 lpfc_rcv_logo(vport, ndlp, cmdiocb, ELS_CMD_PRLO); in lpfc_rcv_prlo_adisc_issue()
1729 lpfc_cmpl_adisc_adisc_issue(struct lpfc_vport *vport, in lpfc_cmpl_adisc_adisc_issue() argument
1733 struct lpfc_hba *phba = vport->phba; in lpfc_cmpl_adisc_adisc_issue()
1747 (!lpfc_check_adisc(vport, ndlp, &ap->nodeName, &ap->portName))) { in lpfc_cmpl_adisc_adisc_issue()
1757 lpfc_nlp_set_state(vport, ndlp, NLP_STE_NPR_NODE); in lpfc_cmpl_adisc_adisc_issue()
1758 lpfc_unreg_rpi(vport, ndlp); in lpfc_cmpl_adisc_adisc_issue()
1779 lpfc_nlp_set_state(vport, ndlp, NLP_STE_MAPPED_NODE); in lpfc_cmpl_adisc_adisc_issue()
1782 lpfc_nlp_set_state(vport, ndlp, NLP_STE_UNMAPPED_NODE); in lpfc_cmpl_adisc_adisc_issue()
1789 lpfc_device_rm_adisc_issue(struct lpfc_vport *vport, struct lpfc_nodelist *ndlp, in lpfc_device_rm_adisc_issue() argument
1799 lpfc_els_abort(vport->phba, ndlp); in lpfc_device_rm_adisc_issue()
1801 lpfc_drop_node(vport, ndlp); in lpfc_device_rm_adisc_issue()
1807 lpfc_device_recov_adisc_issue(struct lpfc_vport *vport, in lpfc_device_recov_adisc_issue() argument
1812 struct lpfc_hba *phba = vport->phba; in lpfc_device_recov_adisc_issue()
1815 if (lpfc_check_unload_and_clr_rscn(&vport->fc_flag)) in lpfc_device_recov_adisc_issue()
1822 lpfc_nlp_set_state(vport, ndlp, NLP_STE_NPR_NODE); in lpfc_device_recov_adisc_issue()
1826 lpfc_disc_set_adisc(vport, ndlp); in lpfc_device_recov_adisc_issue()
1831 lpfc_rcv_plogi_reglogin_issue(struct lpfc_vport *vport, in lpfc_rcv_plogi_reglogin_issue() argument
1838 lpfc_rcv_plogi(vport, ndlp, cmdiocb); in lpfc_rcv_plogi_reglogin_issue()
1843 lpfc_rcv_prli_reglogin_issue(struct lpfc_vport *vport, in lpfc_rcv_prli_reglogin_issue() argument
1851 if (!lpfc_rcv_prli_support_check(vport, ndlp, cmdiocb)) { in lpfc_rcv_prli_reglogin_issue()
1854 if (vport->phba->nvmet_support) { in lpfc_rcv_prli_reglogin_issue()
1860 lpfc_rcv_prli(vport, ndlp, cmdiocb); in lpfc_rcv_prli_reglogin_issue()
1861 lpfc_els_rsp_prli_acc(vport, cmdiocb, ndlp); in lpfc_rcv_prli_reglogin_issue()
1870 lpfc_els_rsp_reject(vport, stat.un.lsRjtError, cmdiocb, in lpfc_rcv_prli_reglogin_issue()
1876 lpfc_els_rsp_prli_acc(vport, cmdiocb, ndlp); in lpfc_rcv_prli_reglogin_issue()
1882 lpfc_rcv_logo_reglogin_issue(struct lpfc_vport *vport, in lpfc_rcv_logo_reglogin_issue() argument
1887 struct lpfc_hba *phba = vport->phba; in lpfc_rcv_logo_reglogin_issue()
1918 lpfc_rcv_logo(vport, ndlp, cmdiocb, ELS_CMD_LOGO); in lpfc_rcv_logo_reglogin_issue()
1923 lpfc_rcv_padisc_reglogin_issue(struct lpfc_vport *vport, in lpfc_rcv_padisc_reglogin_issue() argument
1930 lpfc_rcv_padisc(vport, ndlp, cmdiocb); in lpfc_rcv_padisc_reglogin_issue()
1935 lpfc_rcv_prlo_reglogin_issue(struct lpfc_vport *vport, in lpfc_rcv_prlo_reglogin_issue() argument
1943 lpfc_els_rsp_acc(vport, ELS_CMD_PRLO, cmdiocb, ndlp, NULL); in lpfc_rcv_prlo_reglogin_issue()
1948 lpfc_cmpl_reglogin_reglogin_issue(struct lpfc_vport *vport, in lpfc_cmpl_reglogin_reglogin_issue() argument
1953 struct lpfc_hba *phba = vport->phba; in lpfc_cmpl_reglogin_reglogin_issue()
1960 lpfc_printf_vlog(vport, KERN_ERR, LOG_TRACE_EVENT, in lpfc_cmpl_reglogin_reglogin_issue()
1963 did, mb->mbxStatus, vport->port_state, in lpfc_cmpl_reglogin_reglogin_issue()
1972 lpfc_nlp_set_state(vport, ndlp, NLP_STE_NPR_NODE); in lpfc_cmpl_reglogin_reglogin_issue()
1984 lpfc_issue_els_logo(vport, ndlp, 0); in lpfc_cmpl_reglogin_reglogin_issue()
1995 lpfc_printf_vlog(vport, KERN_INFO, LOG_DISCOVERY, in lpfc_cmpl_reglogin_reglogin_issue()
2005 if (test_bit(FC_PT2PT, &vport->fc_flag)) { in lpfc_cmpl_reglogin_reglogin_issue()
2011 if ((!test_bit(FC_PT2PT_NO_NVME, &vport->fc_flag)) && in lpfc_cmpl_reglogin_reglogin_issue()
2012 (vport->cfg_enable_fc4_type == LPFC_ENABLE_BOTH || in lpfc_cmpl_reglogin_reglogin_issue()
2013 vport->cfg_enable_fc4_type == LPFC_ENABLE_NVME)) { in lpfc_cmpl_reglogin_reglogin_issue()
2016 lpfc_nvme_update_localport(vport); in lpfc_cmpl_reglogin_reglogin_issue()
2027 if (vport->cfg_enable_fc4_type != LPFC_ENABLE_FCP) { in lpfc_cmpl_reglogin_reglogin_issue()
2028 lpfc_ns_cmd(vport, SLI_CTNS_GFT_ID, 0, in lpfc_cmpl_reglogin_reglogin_issue()
2036 lpfc_nlp_set_state(vport, ndlp, NLP_STE_PRLI_ISSUE); in lpfc_cmpl_reglogin_reglogin_issue()
2037 if (lpfc_issue_els_prli(vport, ndlp, 0)) { in lpfc_cmpl_reglogin_reglogin_issue()
2038 lpfc_issue_els_logo(vport, ndlp, 0); in lpfc_cmpl_reglogin_reglogin_issue()
2040 lpfc_nlp_set_state(vport, ndlp, NLP_STE_NPR_NODE); in lpfc_cmpl_reglogin_reglogin_issue()
2043 if (test_bit(FC_PT2PT, &vport->fc_flag) && phba->nvmet_support) in lpfc_cmpl_reglogin_reglogin_issue()
2044 phba->targetport->port_id = vport->fc_myDID; in lpfc_cmpl_reglogin_reglogin_issue()
2052 lpfc_nlp_set_state(vport, ndlp, NLP_STE_UNMAPPED_NODE); in lpfc_cmpl_reglogin_reglogin_issue()
2059 lpfc_device_rm_reglogin_issue(struct lpfc_vport *vport, in lpfc_device_rm_reglogin_issue() argument
2070 lpfc_drop_node(vport, ndlp); in lpfc_device_rm_reglogin_issue()
2076 lpfc_device_recov_reglogin_issue(struct lpfc_vport *vport, in lpfc_device_recov_reglogin_issue() argument
2082 if (lpfc_check_unload_and_clr_rscn(&vport->fc_flag)) in lpfc_device_recov_reglogin_issue()
2086 lpfc_nlp_set_state(vport, ndlp, NLP_STE_NPR_NODE); in lpfc_device_recov_reglogin_issue()
2093 !vport->phba->nvmet_support) in lpfc_device_recov_reglogin_issue()
2098 lpfc_disc_set_adisc(vport, ndlp); in lpfc_device_recov_reglogin_issue()
2103 lpfc_rcv_plogi_prli_issue(struct lpfc_vport *vport, struct lpfc_nodelist *ndlp, in lpfc_rcv_plogi_prli_issue() argument
2110 lpfc_rcv_plogi(vport, ndlp, cmdiocb); in lpfc_rcv_plogi_prli_issue()
2115 lpfc_rcv_prli_prli_issue(struct lpfc_vport *vport, struct lpfc_nodelist *ndlp, in lpfc_rcv_prli_prli_issue() argument
2120 if (!lpfc_rcv_prli_support_check(vport, ndlp, cmdiocb)) in lpfc_rcv_prli_prli_issue()
2122 lpfc_rcv_prli(vport, ndlp, cmdiocb); in lpfc_rcv_prli_prli_issue()
2123 lpfc_els_rsp_prli_acc(vport, cmdiocb, ndlp); in lpfc_rcv_prli_prli_issue()
2128 lpfc_rcv_logo_prli_issue(struct lpfc_vport *vport, struct lpfc_nodelist *ndlp, in lpfc_rcv_logo_prli_issue() argument
2134 lpfc_els_abort(vport->phba, ndlp); in lpfc_rcv_logo_prli_issue()
2136 lpfc_rcv_logo(vport, ndlp, cmdiocb, ELS_CMD_LOGO); in lpfc_rcv_logo_prli_issue()
2141 lpfc_rcv_padisc_prli_issue(struct lpfc_vport *vport, struct lpfc_nodelist *ndlp, in lpfc_rcv_padisc_prli_issue() argument
2146 lpfc_rcv_padisc(vport, ndlp, cmdiocb); in lpfc_rcv_padisc_prli_issue()
2156 lpfc_rcv_prlo_prli_issue(struct lpfc_vport *vport, struct lpfc_nodelist *ndlp, in lpfc_rcv_prlo_prli_issue() argument
2161 lpfc_els_rsp_acc(vport, ELS_CMD_PRLO, cmdiocb, ndlp, NULL); in lpfc_rcv_prlo_prli_issue()
2166 lpfc_cmpl_prli_prli_issue(struct lpfc_vport *vport, struct lpfc_nodelist *ndlp, in lpfc_cmpl_prli_prli_issue() argument
2170 struct lpfc_hba *phba = vport->phba; in lpfc_cmpl_prli_prli_issue()
2195 if ((vport->port_type == LPFC_NPIV_PORT) && in lpfc_cmpl_prli_prli_issue()
2196 vport->cfg_restrict_login) { in lpfc_cmpl_prli_prli_issue()
2211 lpfc_printf_vlog(vport, KERN_INFO, in lpfc_cmpl_prli_prli_issue()
2288 lpfc_printf_vlog(vport, KERN_INFO, LOG_NVME_DISC, in lpfc_cmpl_prli_prli_issue()
2299 (vport->port_type == LPFC_NPIV_PORT) && in lpfc_cmpl_prli_prli_issue()
2300 vport->cfg_restrict_login) { in lpfc_cmpl_prli_prli_issue()
2305 lpfc_issue_els_logo(vport, ndlp, 0); in lpfc_cmpl_prli_prli_issue()
2308 lpfc_nlp_set_state(vport, ndlp, NLP_STE_NPR_NODE); in lpfc_cmpl_prli_prli_issue()
2319 lpfc_nlp_set_state(vport, ndlp, NLP_STE_MAPPED_NODE); in lpfc_cmpl_prli_prli_issue()
2322 lpfc_nlp_set_state(vport, ndlp, NLP_STE_UNMAPPED_NODE); in lpfc_cmpl_prli_prli_issue()
2324 lpfc_printf_vlog(vport, in lpfc_cmpl_prli_prli_issue()
2353 lpfc_device_rm_prli_issue(struct lpfc_vport *vport, struct lpfc_nodelist *ndlp, in lpfc_device_rm_prli_issue() argument
2363 lpfc_els_abort(vport->phba, ndlp); in lpfc_device_rm_prli_issue()
2365 lpfc_drop_node(vport, ndlp); in lpfc_device_rm_prli_issue()
2388 lpfc_device_recov_prli_issue(struct lpfc_vport *vport, in lpfc_device_recov_prli_issue() argument
2393 struct lpfc_hba *phba = vport->phba; in lpfc_device_recov_prli_issue()
2396 if (lpfc_check_unload_and_clr_rscn(&vport->fc_flag)) in lpfc_device_recov_prli_issue()
2403 lpfc_nlp_set_state(vport, ndlp, NLP_STE_NPR_NODE); in lpfc_device_recov_prli_issue()
2407 lpfc_disc_set_adisc(vport, ndlp); in lpfc_device_recov_prli_issue()
2412 lpfc_rcv_plogi_logo_issue(struct lpfc_vport *vport, struct lpfc_nodelist *ndlp, in lpfc_rcv_plogi_logo_issue() argument
2421 lpfc_els_rsp_reject(vport, stat.un.lsRjtError, cmdiocb, ndlp, NULL); in lpfc_rcv_plogi_logo_issue()
2426 lpfc_rcv_prli_logo_issue(struct lpfc_vport *vport, struct lpfc_nodelist *ndlp, in lpfc_rcv_prli_logo_issue() argument
2435 lpfc_els_rsp_reject(vport, stat.un.lsRjtError, cmdiocb, ndlp, NULL); in lpfc_rcv_prli_logo_issue()
2440 lpfc_rcv_logo_logo_issue(struct lpfc_vport *vport, struct lpfc_nodelist *ndlp, in lpfc_rcv_logo_logo_issue() argument
2448 lpfc_els_rsp_acc(vport, ELS_CMD_ACC, cmdiocb, ndlp, NULL); in lpfc_rcv_logo_logo_issue()
2453 lpfc_rcv_padisc_logo_issue(struct lpfc_vport *vport, struct lpfc_nodelist *ndlp, in lpfc_rcv_padisc_logo_issue() argument
2462 lpfc_els_rsp_reject(vport, stat.un.lsRjtError, cmdiocb, ndlp, NULL); in lpfc_rcv_padisc_logo_issue()
2467 lpfc_rcv_prlo_logo_issue(struct lpfc_vport *vport, struct lpfc_nodelist *ndlp, in lpfc_rcv_prlo_logo_issue() argument
2476 lpfc_els_rsp_reject(vport, stat.un.lsRjtError, cmdiocb, ndlp, NULL); in lpfc_rcv_prlo_logo_issue()
2481 lpfc_cmpl_logo_logo_issue(struct lpfc_vport *vport, struct lpfc_nodelist *ndlp, in lpfc_cmpl_logo_logo_issue() argument
2485 lpfc_nlp_set_state(vport, ndlp, NLP_STE_NPR_NODE); in lpfc_cmpl_logo_logo_issue()
2489 lpfc_disc_set_adisc(vport, ndlp); in lpfc_cmpl_logo_logo_issue()
2494 lpfc_device_rm_logo_issue(struct lpfc_vport *vport, struct lpfc_nodelist *ndlp, in lpfc_device_rm_logo_issue() argument
2502 lpfc_unreg_rpi(vport, ndlp); in lpfc_device_rm_logo_issue()
2504 lpfc_els_abort(vport->phba, ndlp); in lpfc_device_rm_logo_issue()
2505 lpfc_drop_node(vport, ndlp); in lpfc_device_rm_logo_issue()
2510 lpfc_device_recov_logo_issue(struct lpfc_vport *vport, in lpfc_device_recov_logo_issue() argument
2523 lpfc_rcv_plogi_unmap_node(struct lpfc_vport *vport, struct lpfc_nodelist *ndlp, in lpfc_rcv_plogi_unmap_node() argument
2528 lpfc_rcv_plogi(vport, ndlp, cmdiocb); in lpfc_rcv_plogi_unmap_node()
2533 lpfc_rcv_prli_unmap_node(struct lpfc_vport *vport, struct lpfc_nodelist *ndlp, in lpfc_rcv_prli_unmap_node() argument
2538 if (!lpfc_rcv_prli_support_check(vport, ndlp, cmdiocb)) in lpfc_rcv_prli_unmap_node()
2541 lpfc_rcv_prli(vport, ndlp, cmdiocb); in lpfc_rcv_prli_unmap_node()
2542 lpfc_els_rsp_prli_acc(vport, cmdiocb, ndlp); in lpfc_rcv_prli_unmap_node()
2547 lpfc_rcv_logo_unmap_node(struct lpfc_vport *vport, struct lpfc_nodelist *ndlp, in lpfc_rcv_logo_unmap_node() argument
2552 lpfc_rcv_logo(vport, ndlp, cmdiocb, ELS_CMD_LOGO); in lpfc_rcv_logo_unmap_node()
2557 lpfc_rcv_padisc_unmap_node(struct lpfc_vport *vport, struct lpfc_nodelist *ndlp, in lpfc_rcv_padisc_unmap_node() argument
2562 lpfc_rcv_padisc(vport, ndlp, cmdiocb); in lpfc_rcv_padisc_unmap_node()
2567 lpfc_rcv_prlo_unmap_node(struct lpfc_vport *vport, struct lpfc_nodelist *ndlp, in lpfc_rcv_prlo_unmap_node() argument
2572 lpfc_els_rsp_acc(vport, ELS_CMD_PRLO, cmdiocb, ndlp, NULL); in lpfc_rcv_prlo_unmap_node()
2577 lpfc_device_rm_unmap_node(struct lpfc_vport *vport, in lpfc_device_rm_unmap_node() argument
2582 lpfc_drop_node(vport, ndlp); in lpfc_device_rm_unmap_node()
2587 lpfc_device_recov_unmap_node(struct lpfc_vport *vport, in lpfc_device_recov_unmap_node() argument
2593 lpfc_nlp_set_state(vport, ndlp, NLP_STE_NPR_NODE); in lpfc_device_recov_unmap_node()
2598 lpfc_disc_set_adisc(vport, ndlp); in lpfc_device_recov_unmap_node()
2604 lpfc_rcv_plogi_mapped_node(struct lpfc_vport *vport, struct lpfc_nodelist *ndlp, in lpfc_rcv_plogi_mapped_node() argument
2609 lpfc_rcv_plogi(vport, ndlp, cmdiocb); in lpfc_rcv_plogi_mapped_node()
2614 lpfc_rcv_prli_mapped_node(struct lpfc_vport *vport, struct lpfc_nodelist *ndlp, in lpfc_rcv_prli_mapped_node() argument
2619 if (!lpfc_rcv_prli_support_check(vport, ndlp, cmdiocb)) in lpfc_rcv_prli_mapped_node()
2621 lpfc_els_rsp_prli_acc(vport, cmdiocb, ndlp); in lpfc_rcv_prli_mapped_node()
2626 lpfc_rcv_logo_mapped_node(struct lpfc_vport *vport, struct lpfc_nodelist *ndlp, in lpfc_rcv_logo_mapped_node() argument
2631 lpfc_rcv_logo(vport, ndlp, cmdiocb, ELS_CMD_LOGO); in lpfc_rcv_logo_mapped_node()
2636 lpfc_rcv_padisc_mapped_node(struct lpfc_vport *vport, in lpfc_rcv_padisc_mapped_node() argument
2642 lpfc_rcv_padisc(vport, ndlp, cmdiocb); in lpfc_rcv_padisc_mapped_node()
2647 lpfc_rcv_prlo_mapped_node(struct lpfc_vport *vport, struct lpfc_nodelist *ndlp, in lpfc_rcv_prlo_mapped_node() argument
2653 lpfc_sli_abort_iocb(vport, ndlp->nlp_sid, 0, LPFC_CTX_TGT); in lpfc_rcv_prlo_mapped_node()
2659 lpfc_els_rsp_acc(vport, ELS_CMD_PRLO, cmdiocb, ndlp, NULL); in lpfc_rcv_prlo_mapped_node()
2667 lpfc_printf_vlog(vport, KERN_INFO, LOG_NODE | LOG_ELS | LOG_DISCOVERY, in lpfc_rcv_prlo_mapped_node()
2673 lpfc_nlp_set_state(vport, ndlp, NLP_STE_NPR_NODE); in lpfc_rcv_prlo_mapped_node()
2679 lpfc_device_recov_mapped_node(struct lpfc_vport *vport, in lpfc_device_recov_mapped_node() argument
2684 lpfc_disc_set_adisc(vport, ndlp); in lpfc_device_recov_mapped_node()
2687 lpfc_nlp_set_state(vport, ndlp, NLP_STE_NPR_NODE); in lpfc_device_recov_mapped_node()
2696 lpfc_rcv_plogi_npr_node(struct lpfc_vport *vport, struct lpfc_nodelist *ndlp, in lpfc_rcv_plogi_npr_node() argument
2704 if (lpfc_rcv_plogi(vport, ndlp, cmdiocb)) { in lpfc_rcv_plogi_npr_node()
2705 lpfc_cancel_retry_delay_tmo(vport, ndlp); in lpfc_rcv_plogi_npr_node()
2713 lpfc_nlp_set_state(vport, ndlp, NLP_STE_PLOGI_ISSUE); in lpfc_rcv_plogi_npr_node()
2714 lpfc_issue_els_plogi(vport, ndlp->nlp_DID, 0); in lpfc_rcv_plogi_npr_node()
2721 lpfc_rcv_prli_npr_node(struct lpfc_vport *vport, struct lpfc_nodelist *ndlp, in lpfc_rcv_prli_npr_node() argument
2730 lpfc_els_rsp_reject(vport, stat.un.lsRjtError, cmdiocb, ndlp, NULL); in lpfc_rcv_prli_npr_node()
2741 lpfc_nlp_set_state(vport, ndlp, NLP_STE_PLOGI_ISSUE); in lpfc_rcv_prli_npr_node()
2742 lpfc_issue_els_plogi(vport, ndlp->nlp_DID, 0); in lpfc_rcv_prli_npr_node()
2749 lpfc_rcv_logo_npr_node(struct lpfc_vport *vport, struct lpfc_nodelist *ndlp, in lpfc_rcv_logo_npr_node() argument
2754 lpfc_rcv_logo(vport, ndlp, cmdiocb, ELS_CMD_LOGO); in lpfc_rcv_logo_npr_node()
2759 lpfc_rcv_padisc_npr_node(struct lpfc_vport *vport, struct lpfc_nodelist *ndlp, in lpfc_rcv_padisc_npr_node() argument
2764 lpfc_rcv_padisc(vport, ndlp, cmdiocb); in lpfc_rcv_padisc_npr_node()
2780 lpfc_nlp_set_state(vport, ndlp, NLP_STE_PLOGI_ISSUE); in lpfc_rcv_padisc_npr_node()
2781 lpfc_issue_els_plogi(vport, ndlp->nlp_DID, 0); in lpfc_rcv_padisc_npr_node()
2788 lpfc_rcv_prlo_npr_node(struct lpfc_vport *vport, struct lpfc_nodelist *ndlp, in lpfc_rcv_prlo_npr_node() argument
2797 lpfc_els_rsp_acc(vport, ELS_CMD_ACC, cmdiocb, ndlp, NULL); in lpfc_rcv_prlo_npr_node()
2816 lpfc_cmpl_plogi_npr_node(struct lpfc_vport *vport, struct lpfc_nodelist *ndlp, in lpfc_cmpl_plogi_npr_node() argument
2819 struct lpfc_hba *phba = vport->phba; in lpfc_cmpl_plogi_npr_node()
2835 lpfc_cmpl_prli_npr_node(struct lpfc_vport *vport, struct lpfc_nodelist *ndlp, in lpfc_cmpl_prli_npr_node() argument
2838 struct lpfc_hba *phba = vport->phba; in lpfc_cmpl_prli_npr_node()
2848 lpfc_drop_node(vport, ndlp); in lpfc_cmpl_prli_npr_node()
2855 lpfc_cmpl_logo_npr_node(struct lpfc_vport *vport, struct lpfc_nodelist *ndlp, in lpfc_cmpl_logo_npr_node() argument
2860 clear_bit(FC_FABRIC, &vport->fc_flag); in lpfc_cmpl_logo_npr_node()
2861 clear_bit(FC_PUBLIC_LOOP, &vport->fc_flag); in lpfc_cmpl_logo_npr_node()
2863 lpfc_unreg_rpi(vport, ndlp); in lpfc_cmpl_logo_npr_node()
2868 lpfc_cmpl_adisc_npr_node(struct lpfc_vport *vport, struct lpfc_nodelist *ndlp, in lpfc_cmpl_adisc_npr_node() argument
2871 struct lpfc_hba *phba = vport->phba; in lpfc_cmpl_adisc_npr_node()
2881 lpfc_drop_node(vport, ndlp); in lpfc_cmpl_adisc_npr_node()
2888 lpfc_cmpl_reglogin_npr_node(struct lpfc_vport *vport, in lpfc_cmpl_reglogin_npr_node() argument
2897 if (vport->phba->sli_rev < LPFC_SLI_REV4) in lpfc_cmpl_reglogin_npr_node()
2901 lpfc_unreg_rpi(vport, ndlp); in lpfc_cmpl_reglogin_npr_node()
2905 lpfc_drop_node(vport, ndlp); in lpfc_cmpl_reglogin_npr_node()
2913 lpfc_device_rm_npr_node(struct lpfc_vport *vport, struct lpfc_nodelist *ndlp, in lpfc_device_rm_npr_node() argument
2922 lpfc_drop_node(vport, ndlp); in lpfc_device_rm_npr_node()
2927 lpfc_device_recov_npr_node(struct lpfc_vport *vport, struct lpfc_nodelist *ndlp, in lpfc_device_recov_npr_node() argument
2931 if (lpfc_check_unload_and_clr_rscn(&vport->fc_flag)) in lpfc_device_recov_npr_node()
2934 lpfc_cancel_retry_delay_tmo(vport, ndlp); in lpfc_device_recov_npr_node()
3130 lpfc_disc_state_machine(struct lpfc_vport *vport, struct lpfc_nodelist *ndlp, in lpfc_disc_state_machine() argument
3147 lpfc_printf_vlog(vport, KERN_INFO, LOG_DISCOVERY, in lpfc_disc_state_machine()
3153 lpfc_debugfs_disc_trc(vport, LPFC_DISC_TRC_DSM, in lpfc_disc_state_machine()
3158 rc = (func) (vport, ndlp, arg, evt); in lpfc_disc_state_machine()
3164 lpfc_printf_vlog(vport, KERN_INFO, LOG_DISCOVERY, in lpfc_disc_state_machine()
3170 lpfc_debugfs_disc_trc(vport, LPFC_DISC_TRC_DSM, in lpfc_disc_state_machine()
3176 lpfc_printf_vlog(vport, KERN_INFO, LOG_DISCOVERY, in lpfc_disc_state_machine()
3179 lpfc_debugfs_disc_trc(vport, LPFC_DISC_TRC_DSM, in lpfc_disc_state_machine()