Home
last modified time | relevance | path

Searched refs:ndlp (Results 1 – 21 of 21) sorted by relevance

/Linux-v5.15/drivers/scsi/lpfc/
Dlpfc_nportdisc.c52 lpfc_check_adisc(struct lpfc_vport *vport, struct lpfc_nodelist *ndlp, in lpfc_check_adisc() argument
56 if (!(ndlp->nlp_flag & NLP_RPI_REGISTERED)) in lpfc_check_adisc()
62 if (memcmp(nn, &ndlp->nlp_nodename, sizeof (struct lpfc_name))) in lpfc_check_adisc()
65 if (memcmp(pn, &ndlp->nlp_portname, sizeof (struct lpfc_name))) in lpfc_check_adisc()
73 lpfc_check_sparm(struct lpfc_vport *vport, struct lpfc_nodelist *ndlp, in lpfc_check_sparm() argument
151 memcpy(&ndlp->nlp_nodename, &sp->nodeName, sizeof (struct lpfc_name)); in lpfc_check_sparm()
152 memcpy(&ndlp->nlp_portname, &sp->portName, sizeof (struct lpfc_name)); in lpfc_check_sparm()
159 ndlp->nlp_DID, in lpfc_check_sparm()
208 lpfc_els_abort(struct lpfc_hba *phba, struct lpfc_nodelist *ndlp) in lpfc_els_abort() argument
221 lpfc_printf_vlog(ndlp->vport, KERN_INFO, LOG_DISCOVERY, in lpfc_els_abort()
[all …]
Dlpfc_els.c56 struct lpfc_nodelist *ndlp, uint8_t retry);
165 struct lpfc_nodelist *ndlp, uint32_t did, in lpfc_prep_els_iocb() argument
329 vport->port_state, ndlp->nlp_rpi, in lpfc_prep_els_iocb()
330 vport->fc_flag, ndlp->nlp_flag, vport); in lpfc_prep_els_iocb()
337 elscmd, ndlp->nlp_DID, elsiocb->iotag, in lpfc_prep_els_iocb()
339 ndlp->nlp_rpi, vport->fc_flag); in lpfc_prep_els_iocb()
380 struct lpfc_nodelist *ndlp; in lpfc_issue_fabric_reglogin() local
386 ndlp = lpfc_findnode_did(vport, Fabric_DID); in lpfc_issue_fabric_reglogin()
387 if (!ndlp) { in lpfc_issue_fabric_reglogin()
415 ndlp->nlp_rpi); in lpfc_issue_fabric_reglogin()
[all …]
Dlpfc_hbadisc.c79 lpfc_valid_xpt_node(struct lpfc_nodelist *ndlp) in lpfc_valid_xpt_node() argument
81 if (ndlp->nlp_fc4_type || in lpfc_valid_xpt_node()
82 ndlp->nlp_type & NLP_FABRIC) in lpfc_valid_xpt_node()
96 struct lpfc_nodelist *ndlp; in lpfc_rport_invalid() local
110 ndlp = rdata->pnode; in lpfc_rport_invalid()
117 if (!ndlp->vport) { in lpfc_rport_invalid()
119 "SID x%x\n", __func__, ndlp, ndlp->nlp_DID, rport, in lpfc_rport_invalid()
130 struct lpfc_nodelist *ndlp; in lpfc_terminate_rport_io() local
137 ndlp = rdata->pnode; in lpfc_terminate_rport_io()
138 vport = ndlp->vport; in lpfc_terminate_rport_io()
[all …]
Dlpfc_nvme.c57 lpfc_get_nvme_buf(struct lpfc_hba *phba, struct lpfc_nodelist *ndlp,
188 struct lpfc_nodelist *ndlp; in lpfc_nvme_remoteport_delete() local
191 ndlp = rport->ndlp; in lpfc_nvme_remoteport_delete()
192 if (!ndlp) { in lpfc_nvme_remoteport_delete()
198 vport = ndlp->vport; in lpfc_nvme_remoteport_delete()
201 __func__, ndlp, ndlp->nlp_state, rport); in lpfc_nvme_remoteport_delete()
214 spin_lock_irq(&ndlp->lock); in lpfc_nvme_remoteport_delete()
219 if (ndlp->fc4_xpt_flags & NVME_XPT_UNREG_WAIT) in lpfc_nvme_remoteport_delete()
220 ndlp->fc4_xpt_flags &= ~(NVME_XPT_UNREG_WAIT | NVME_XPT_REGD); in lpfc_nvme_remoteport_delete()
222 spin_unlock_irq(&ndlp->lock); in lpfc_nvme_remoteport_delete()
[all …]
Dlpfc_vport.c297 struct lpfc_nodelist *ndlp; in lpfc_vport_create() local
464 ndlp = lpfc_findnode_did(phba->pport, Fabric_DID); in lpfc_vport_create()
465 if (ndlp && in lpfc_vport_create()
466 ndlp->nlp_state == NLP_STE_UNMAPPED_NODE) { in lpfc_vport_create()
493 struct lpfc_nodelist *ndlp = NULL, *next_ndlp = NULL; in disable_vport() local
497 ndlp = lpfc_findnode_did(vport, Fabric_DID); in disable_vport()
498 if (ndlp && phba->link_state >= LPFC_LINK_UP) { in disable_vport()
501 if (!lpfc_issue_els_npiv_logo(vport, ndlp)) in disable_vport()
511 list_for_each_entry_safe(ndlp, next_ndlp, &vport->fc_nodes, nlp_listp) { in disable_vport()
512 if (ndlp->nlp_state == NLP_STE_UNUSED_NODE) in disable_vport()
[all …]
Dlpfc_ct.c118 struct lpfc_nodelist *ndlp; in lpfc_ct_unsol_cmpl() local
121 ndlp = (struct lpfc_nodelist *)cmdiocb->context1; in lpfc_ct_unsol_cmpl()
122 if (ndlp) in lpfc_ct_unsol_cmpl()
123 lpfc_nlp_put(ndlp); in lpfc_ct_unsol_cmpl()
153 lpfc_ct_reject_event(struct lpfc_nodelist *ndlp, in lpfc_ct_reject_event() argument
157 struct lpfc_vport *vport = ndlp->vport; in lpfc_ct_reject_event()
239 cmdiocbq->context1 = lpfc_nlp_get(ndlp); in lpfc_ct_reject_event()
246 phba->sli4_hba.rpi_ids[ndlp->nlp_rpi]; in lpfc_ct_reject_event()
251 cmdiocbq->context_un.ndlp = NULL; in lpfc_ct_reject_event()
259 lpfc_nlp_put(ndlp); in lpfc_ct_reject_event()
[all …]
Dlpfc_nvme.h37 #define lpfc_ndlp_get_nrport(ndlp) \ argument
38 ((!ndlp->nrport || (ndlp->fc4_xpt_flags & NVME_XPT_UNREG_WAIT))\
39 ? NULL : ndlp->nrport)
71 struct lpfc_nodelist *ndlp; member
197 struct lpfc_nodelist *ndlp; member
233 int __lpfc_nvme_ls_req(struct lpfc_vport *vport, struct lpfc_nodelist *ndlp,
241 struct lpfc_nodelist *ndlp, struct nvmefc_ls_req *pnvme_lsreq);
Dlpfc_nvmet.c1312 struct lpfc_nodelist *ndlp; in lpfc_nvmet_ls_req() local
1327 ndlp = (struct lpfc_nodelist *)hosthandle; in lpfc_nvmet_ls_req()
1329 ret = __lpfc_nvme_ls_req(phba->pport, ndlp, pnvme_lsreq, in lpfc_nvmet_ls_req()
1352 struct lpfc_nodelist *ndlp; in lpfc_nvmet_ls_abort() local
1359 ndlp = (struct lpfc_nodelist *)hosthandle; in lpfc_nvmet_ls_abort()
1361 ret = __lpfc_nvme_ls_abort(phba->pport, ndlp, pnvme_lsreq); in lpfc_nvmet_ls_abort()
1369 struct lpfc_nodelist *ndlp = hosthandle; in lpfc_nvmet_host_release() local
1370 struct lpfc_hba *phba = ndlp->phba; in lpfc_nvmet_host_release()
1379 hosthandle, ndlp->nlp_DID, ndlp->fc4_xpt_flags, in lpfc_nvmet_host_release()
1380 kref_read(&ndlp->kref)); in lpfc_nvmet_host_release()
[all …]
Dlpfc_scsi.c503 struct lpfc_nodelist *ndlp; in lpfc_sli4_io_xri_aborted() local
531 ndlp = psb->rdata->pnode; in lpfc_sli4_io_xri_aborted()
533 ndlp = NULL; in lpfc_sli4_io_xri_aborted()
537 if (ndlp) { in lpfc_sli4_io_xri_aborted()
538 lpfc_set_rrq_active(phba, ndlp, in lpfc_sli4_io_xri_aborted()
540 lpfc_sli4_abts_err_handler(phba, ndlp, axri); in lpfc_sli4_io_xri_aborted()
607 lpfc_get_scsi_buf_s3(struct lpfc_hba *phba, struct lpfc_nodelist *ndlp, in lpfc_get_scsi_buf_s3() argument
628 if (lpfc_ndlp_check_qdepth(phba, ndlp) && lpfc_cmd) { in lpfc_get_scsi_buf_s3()
629 atomic_inc(&ndlp->cmd_pending); in lpfc_get_scsi_buf_s3()
648 lpfc_get_scsi_buf_s4(struct lpfc_hba *phba, struct lpfc_nodelist *ndlp, in lpfc_get_scsi_buf_s4() argument
[all …]
Dlpfc_sli.c988 struct lpfc_nodelist *ndlp = NULL; in lpfc_clr_rrq_active() local
992 ndlp = lpfc_findnode_did(rrq->vport, rrq->nlp_DID); in lpfc_clr_rrq_active()
994 if (!ndlp) in lpfc_clr_rrq_active()
997 if (test_and_clear_bit(xritag, ndlp->active_rrqs_xri_bitmap)) { in lpfc_clr_rrq_active()
1099 lpfc_cleanup_vports_rrqs(struct lpfc_vport *vport, struct lpfc_nodelist *ndlp) in lpfc_cleanup_vports_rrqs() argument
1110 if (!ndlp) { in lpfc_cleanup_vports_rrqs()
1119 if (!ndlp || ndlp == lpfc_findnode_did(vport, rrq->nlp_DID)) in lpfc_cleanup_vports_rrqs()
1142 lpfc_test_rrq_active(struct lpfc_hba *phba, struct lpfc_nodelist *ndlp, in lpfc_test_rrq_active() argument
1145 if (!ndlp) in lpfc_test_rrq_active()
1147 if (!ndlp->active_rrqs_xri_bitmap) in lpfc_test_rrq_active()
[all …]
Dlpfc_attr.c342 struct lpfc_nodelist *ndlp; in lpfc_nvme_info_show() local
548 list_for_each_entry(ndlp, &vport->fc_nodes, nlp_listp) { in lpfc_nvme_info_show()
550 spin_lock(&ndlp->lock); in lpfc_nvme_info_show()
551 rport = lpfc_ndlp_get_nrport(ndlp); in lpfc_nvme_info_show()
554 spin_unlock(&ndlp->lock); in lpfc_nvme_info_show()
3807 struct lpfc_nodelist *ndlp; in lpfc_update_rport_devloss_tmo() local
3815 list_for_each_entry(ndlp, &vport->fc_nodes, nlp_listp) { in lpfc_update_rport_devloss_tmo()
3816 if (ndlp->rport) in lpfc_update_rport_devloss_tmo()
3817 ndlp->rport->dev_loss_tmo = vport->cfg_devloss_tmo; in lpfc_update_rport_devloss_tmo()
3819 spin_lock(&ndlp->lock); in lpfc_update_rport_devloss_tmo()
[all …]
Dlpfc_bsg.c78 struct lpfc_nodelist *ndlp; member
308 struct lpfc_nodelist *ndlp; in lpfc_bsg_send_mgmt_cmd_cmp() local
332 ndlp = iocb->cmdiocbq->context_un.ndlp; in lpfc_bsg_send_mgmt_cmd_cmp()
369 lpfc_nlp_put(ndlp); in lpfc_bsg_send_mgmt_cmd_cmp()
393 struct lpfc_nodelist *ndlp = rdata->pnode; in lpfc_bsg_send_mgmt_cmd() local
411 if (ndlp->nlp_flag & NLP_ELS_SND_MASK) in lpfc_bsg_send_mgmt_cmd()
478 cmd->ulpContext = ndlp->nlp_rpi; in lpfc_bsg_send_mgmt_cmd()
480 cmd->ulpContext = phba->sli4_hba.rpi_ids[ndlp->nlp_rpi]; in lpfc_bsg_send_mgmt_cmd()
509 cmdiocbq->context_un.ndlp = lpfc_nlp_get(ndlp); in lpfc_bsg_send_mgmt_cmd()
510 if (!cmdiocbq->context_un.ndlp) { in lpfc_bsg_send_mgmt_cmd()
[all …]
Dlpfc_disc.h168 #define lpfc_ndlp_check_qdepth(phba, ndlp) \ argument
169 (ndlp->cmd_qdepth < phba->sli4_hba.max_cfg_param.max_xri)
Dlpfc_crtn.h106 void lpfc_nlp_reg_node(struct lpfc_vport *vport, struct lpfc_nodelist *ndlp);
107 void lpfc_nlp_unreg_node(struct lpfc_vport *vport, struct lpfc_nodelist *ndlp);
124 int lpfc_nlp_not_used(struct lpfc_nodelist *ndlp);
586 struct lpfc_nodelist *ndlp);
588 struct lpfc_nodelist *ndlp);
590 struct lpfc_nodelist *ndlp);
606 struct lpfc_nodelist *ndlp);
621 struct lpfc_nodelist *ndlp, u32 hwqid,
Dlpfc_init.c2900 struct lpfc_nodelist *ndlp, *next_ndlp; in lpfc_cleanup() local
2910 list_for_each_entry_safe(ndlp, next_ndlp, &vport->fc_nodes, nlp_listp) { in lpfc_cleanup()
2912 ndlp->nlp_DID == Fabric_DID) { in lpfc_cleanup()
2914 lpfc_nlp_put(ndlp); in lpfc_cleanup()
2918 if (ndlp->nlp_DID == Fabric_Cntl_DID && in lpfc_cleanup()
2919 ndlp->nlp_state == NLP_STE_UNUSED_NODE) { in lpfc_cleanup()
2920 lpfc_nlp_put(ndlp); in lpfc_cleanup()
2927 if (ndlp->nlp_type & NLP_FABRIC && in lpfc_cleanup()
2928 ndlp->nlp_state == NLP_STE_UNMAPPED_NODE) in lpfc_cleanup()
2929 lpfc_disc_state_machine(vport, ndlp, NULL, in lpfc_cleanup()
[all …]
Dlpfc_sli.h122 struct lpfc_nodelist *ndlp; member
400 struct lpfc_nodelist *ndlp; member
Dlpfc_debugfs.c811 struct lpfc_nodelist *ndlp; in lpfc_debugfs_nodelist_data() local
822 list_for_each_entry(ndlp, &vport->fc_nodes, nlp_listp) { in lpfc_debugfs_nodelist_data()
830 switch (ndlp->nlp_state) { in lpfc_debugfs_nodelist_data()
864 statep, ndlp->nlp_DID); in lpfc_debugfs_nodelist_data()
867 wwn_to_u64(ndlp->nlp_portname.u.wwn)); in lpfc_debugfs_nodelist_data()
870 wwn_to_u64(ndlp->nlp_nodename.u.wwn)); in lpfc_debugfs_nodelist_data()
872 ndlp->nlp_rpi); in lpfc_debugfs_nodelist_data()
874 ndlp->nlp_flag); in lpfc_debugfs_nodelist_data()
875 if (!ndlp->nlp_type) in lpfc_debugfs_nodelist_data()
877 if (ndlp->nlp_type & NLP_FC_NODE) in lpfc_debugfs_nodelist_data()
[all …]
Dlpfc_sli4.h1004 struct lpfc_nodelist *ndlp; /* ndlp associated with IO */ member
1030 struct lpfc_nodelist *ndlp; member
1047 struct lpfc_nodelist *ndlp; member
Dlpfc_mbox.c2352 mbox->vport = rdp_context->ndlp->vport; in lpfc_mbx_cmpl_rdp_page_a2()
2389 mbox->vport = rdp_context->ndlp->vport; in lpfc_mbx_cmpl_rdp_page_a0()
2621 lpfc_resume_rpi(struct lpfcMboxq *mbox, struct lpfc_nodelist *ndlp) in lpfc_resume_rpi() argument
2623 struct lpfc_hba *phba = ndlp->phba; in lpfc_resume_rpi()
2630 phba->sli4_hba.rpi_ids[ndlp->nlp_rpi]); in lpfc_resume_rpi()
2632 resume_rpi->event_tag = ndlp->phba->fc_eventTag; in lpfc_resume_rpi()
Dlpfc.h905 (struct lpfc_hba *phba, struct lpfc_nodelist *ndlp,
/Linux-v5.15/Documentation/scsi/
DChangeLog.lpfc538 * Fixed discovery bug: plogi cmpl uses ndlp after its freed.
539 * Fixed discovery bug: rnid acc cmpl, can potentially use ndlp
672 ndlp->nlp_Target Ensure fc_target_* routines are called properly
678 * Cleanup list_del()'s for Discovery ndlp lists.
1196 * Fixed some discovery problems: Introduced deferred ndlp removal
1246 * Move ndlp node from unmap list to map list if ADISC completed
1505 * Do not use DMABUf_t list to store ndlp context
1522 * Use safe list iterator for ndlp list
1575 mbox, iocb, ndlp, bind
1650 write to ndlp structure from lpfc_cmpl_els_acc function.
[all …]