/linux-4.1.27/drivers/scsi/lpfc/ |
D | lpfc_nportdisc.c | 48 lpfc_check_adisc(struct lpfc_vport *vport, struct lpfc_nodelist *ndlp, in lpfc_check_adisc() argument 52 if (!(ndlp->nlp_flag & NLP_RPI_REGISTERED)) in lpfc_check_adisc() 58 if (memcmp(nn, &ndlp->nlp_nodename, sizeof (struct lpfc_name))) in lpfc_check_adisc() 61 if (memcmp(pn, &ndlp->nlp_portname, sizeof (struct lpfc_name))) in lpfc_check_adisc() 69 lpfc_check_sparm(struct lpfc_vport *vport, struct lpfc_nodelist *ndlp, in lpfc_check_sparm() argument 147 memcpy(&ndlp->nlp_nodename, &sp->nodeName, sizeof (struct lpfc_name)); in lpfc_check_sparm() 148 memcpy(&ndlp->nlp_portname, &sp->portName, sizeof (struct lpfc_name)); in lpfc_check_sparm() 155 ndlp->nlp_DID, in lpfc_check_sparm() 204 lpfc_els_abort(struct lpfc_hba *phba, struct lpfc_nodelist *ndlp) in lpfc_els_abort() argument 212 lpfc_printf_vlog(ndlp->vport, KERN_INFO, LOG_DISCOVERY, in lpfc_els_abort() [all …]
|
D | lpfc_els.c | 52 struct lpfc_nodelist *ndlp, uint8_t retry); 152 struct lpfc_nodelist *ndlp, uint32_t did, in lpfc_prep_els_iocb() argument 299 elsiocb->context1 = lpfc_nlp_get(ndlp); in lpfc_prep_els_iocb() 326 elscmd, ndlp->nlp_DID, elsiocb->iotag, in lpfc_prep_els_iocb() 369 struct lpfc_nodelist *ndlp; in lpfc_issue_fabric_reglogin() local 375 ndlp = lpfc_findnode_did(vport, Fabric_DID); in lpfc_issue_fabric_reglogin() 376 if (!ndlp || !NLP_CHK_NODE_ACT(ndlp)) { in lpfc_issue_fabric_reglogin() 404 ndlp->nlp_rpi); in lpfc_issue_fabric_reglogin() 415 mbox->context2 = lpfc_nlp_get(ndlp); in lpfc_issue_fabric_reglogin() 429 lpfc_nlp_put(ndlp); in lpfc_issue_fabric_reglogin() [all …]
|
D | lpfc_hbadisc.c | 73 struct lpfc_nodelist * ndlp; in lpfc_terminate_rport_io() local 77 ndlp = rdata->pnode; in lpfc_terminate_rport_io() 79 if (!ndlp || !NLP_CHK_NODE_ACT(ndlp)) { in lpfc_terminate_rport_io() 87 phba = ndlp->phba; in lpfc_terminate_rport_io() 89 lpfc_debugfs_disc_trc(ndlp->vport, LPFC_DISC_TRC_RPORT, in lpfc_terminate_rport_io() 91 ndlp->nlp_sid, ndlp->nlp_DID, ndlp->nlp_flag); in lpfc_terminate_rport_io() 93 if (ndlp->nlp_sid != NLP_NO_SID) { in lpfc_terminate_rport_io() 94 lpfc_sli_abort_iocb(ndlp->vport, in lpfc_terminate_rport_io() 96 ndlp->nlp_sid, 0, LPFC_CTX_TGT); in lpfc_terminate_rport_io() 107 struct lpfc_nodelist * ndlp; in lpfc_dev_loss_tmo_callbk() local [all …]
|
D | lpfc_vport.c | 293 struct lpfc_nodelist *ndlp; in lpfc_vport_create() local 439 ndlp = lpfc_findnode_did(phba->pport, Fabric_DID); in lpfc_vport_create() 440 if (ndlp && NLP_CHK_NODE_ACT(ndlp) && in lpfc_vport_create() 441 ndlp->nlp_state == NLP_STE_UNMAPPED_NODE) { in lpfc_vport_create() 468 struct lpfc_nodelist *ndlp = NULL, *next_ndlp = NULL; in disable_vport() local 472 ndlp = lpfc_findnode_did(vport, Fabric_DID); in disable_vport() 473 if (ndlp && NLP_CHK_NODE_ACT(ndlp) in disable_vport() 477 if (!lpfc_issue_els_npiv_logo(vport, ndlp)) in disable_vport() 487 list_for_each_entry_safe(ndlp, next_ndlp, &vport->fc_nodes, nlp_listp) { in disable_vport() 488 if (!NLP_CHK_NODE_ACT(ndlp)) in disable_vport() [all …]
|
D | lpfc_disc.h | 130 struct lpfc_nodelist *ndlp; member 165 #define NLP_CHK_NODE_ACT(ndlp) (((ndlp)->nlp_usg_map \ argument 168 !((ndlp)->nlp_usg_map \ 170 #define NLP_SET_NODE_ACT(ndlp) ((ndlp)->nlp_usg_map \ argument 172 #define NLP_INT_NODE_ACT(ndlp) ((ndlp)->nlp_usg_map \ argument 174 #define NLP_CLR_NODE_ACT(ndlp) ((ndlp)->nlp_usg_map \ argument 176 #define NLP_CHK_IACT_REQ(ndlp) ((ndlp)->nlp_usg_map \ argument 178 #define NLP_SET_IACT_REQ(ndlp) ((ndlp)->nlp_usg_map \ argument 180 #define NLP_CHK_FREE_REQ(ndlp) ((ndlp)->nlp_usg_map \ argument 182 #define NLP_SET_FREE_REQ(ndlp) ((ndlp)->nlp_usg_map \ argument [all …]
|
D | lpfc_ct.c | 264 if (ctiocb->context_un.ndlp) { in lpfc_ct_free_iocb() 265 lpfc_nlp_put(ctiocb->context_un.ndlp); in lpfc_ct_free_iocb() 266 ctiocb->context_un.ndlp = NULL; in lpfc_ct_free_iocb() 294 struct lpfc_nodelist *ndlp, uint32_t usr_flg, uint32_t num_entry, in lpfc_gen_req() argument 323 geniocb->context_un.ndlp = lpfc_nlp_get(ndlp); in lpfc_gen_req() 342 icmd->ulpContext = ndlp->nlp_rpi; in lpfc_gen_req() 344 icmd->ulpContext = phba->sli4_hba.rpi_ids[ndlp->nlp_rpi]; in lpfc_gen_req() 356 ndlp->nlp_DID, icmd->ulpIoTag, in lpfc_gen_req() 374 struct lpfc_dmabuf *bmp, struct lpfc_nodelist *ndlp, in lpfc_ct_cmd() argument 398 status = lpfc_gen_req(vport, bmp, inmp, outmp, cmpl, ndlp, 0, in lpfc_ct_cmd() [all …]
|
D | lpfc_bsg.c | 74 struct lpfc_nodelist *ndlp; member 303 struct lpfc_nodelist *ndlp; in lpfc_bsg_send_mgmt_cmd_cmp() local 326 ndlp = iocb->ndlp; in lpfc_bsg_send_mgmt_cmd_cmp() 364 lpfc_nlp_put(ndlp); in lpfc_bsg_send_mgmt_cmd_cmp() 386 struct lpfc_nodelist *ndlp = rdata->pnode; in lpfc_bsg_send_mgmt_cmd() local 412 if (!lpfc_nlp_get(ndlp)) { in lpfc_bsg_send_mgmt_cmd() 417 if (ndlp->nlp_flag & NLP_ELS_SND_MASK) { in lpfc_bsg_send_mgmt_cmd() 477 cmd->ulpContext = ndlp->nlp_rpi; in lpfc_bsg_send_mgmt_cmd() 479 cmd->ulpContext = phba->sli4_hba.rpi_ids[ndlp->nlp_rpi]; in lpfc_bsg_send_mgmt_cmd() 491 cmdiocbq->context_un.ndlp = ndlp; in lpfc_bsg_send_mgmt_cmd() [all …]
|
D | lpfc_attr.c | 2956 struct lpfc_nodelist *ndlp; in lpfc_update_rport_devloss_tmo() local 2960 list_for_each_entry(ndlp, &vport->fc_nodes, nlp_listp) in lpfc_update_rport_devloss_tmo() 2961 if (NLP_CHK_NODE_ACT(ndlp) && ndlp->rport) in lpfc_update_rport_devloss_tmo() 2962 ndlp->rport->dev_loss_tmo = vport->cfg_devloss_tmo; in lpfc_update_rport_devloss_tmo() 3620 struct lpfc_nodelist *ndlp = NULL; in sysfs_drvr_stat_data_read() local 3629 list_for_each_entry(ndlp, &vport->fc_nodes, nlp_listp) { in sysfs_drvr_stat_data_read() 3630 if (!NLP_CHK_NODE_ACT(ndlp) || !ndlp->lat_data) in sysfs_drvr_stat_data_read() 3642 if (!ndlp->lat_data) in sysfs_drvr_stat_data_read() 3647 ndlp->nlp_portname.u.wwn[0], in sysfs_drvr_stat_data_read() 3648 ndlp->nlp_portname.u.wwn[1], in sysfs_drvr_stat_data_read() [all …]
|
D | lpfc_scsi.c | 557 struct lpfc_nodelist *ndlp; in lpfc_sli4_fcp_xri_aborted() local 572 ndlp = psb->rdata->pnode; in lpfc_sli4_fcp_xri_aborted() 574 ndlp = NULL; in lpfc_sli4_fcp_xri_aborted() 578 if (ndlp) { in lpfc_sli4_fcp_xri_aborted() 579 lpfc_set_rrq_active(phba, ndlp, in lpfc_sli4_fcp_xri_aborted() 581 lpfc_sli4_abts_err_handler(phba, ndlp, axri); in lpfc_sli4_fcp_xri_aborted() 970 lpfc_get_scsi_buf_s3(struct lpfc_hba *phba, struct lpfc_nodelist *ndlp) in lpfc_get_scsi_buf_s3() argument 1003 lpfc_get_scsi_buf_s4(struct lpfc_hba *phba, struct lpfc_nodelist *ndlp) in lpfc_get_scsi_buf_s4() argument 1012 if (lpfc_test_rrq_active(phba, ndlp, in lpfc_get_scsi_buf_s4() 1028 phba, ndlp, lpfc_cmd->cur_iocbq.sli4_lxritag)) in lpfc_get_scsi_buf_s4() [all …]
|
D | lpfc_sli.c | 642 struct lpfc_nodelist *ndlp = NULL; in lpfc_clr_rrq_active() local 644 if ((rrq->vport) && NLP_CHK_NODE_ACT(rrq->ndlp)) in lpfc_clr_rrq_active() 645 ndlp = lpfc_findnode_did(rrq->vport, rrq->nlp_DID); in lpfc_clr_rrq_active() 651 if ((!ndlp) && rrq->ndlp) in lpfc_clr_rrq_active() 652 ndlp = rrq->ndlp; in lpfc_clr_rrq_active() 654 if (!ndlp) in lpfc_clr_rrq_active() 657 if (test_and_clear_bit(xritag, ndlp->active_rrqs_xri_bitmap)) { in lpfc_clr_rrq_active() 759 lpfc_cleanup_vports_rrqs(struct lpfc_vport *vport, struct lpfc_nodelist *ndlp) in lpfc_cleanup_vports_rrqs() argument 770 if (!ndlp) { in lpfc_cleanup_vports_rrqs() 776 if ((rrq->vport == vport) && (!ndlp || rrq->ndlp == ndlp)) in lpfc_cleanup_vports_rrqs() [all …]
|
D | lpfc_init.c | 2525 struct lpfc_nodelist *ndlp, *next_ndlp; in lpfc_cleanup() local 2531 list_for_each_entry_safe(ndlp, next_ndlp, &vport->fc_nodes, nlp_listp) { in lpfc_cleanup() 2532 if (!NLP_CHK_NODE_ACT(ndlp)) { in lpfc_cleanup() 2533 ndlp = lpfc_enable_node(vport, ndlp, in lpfc_cleanup() 2535 if (!ndlp) in lpfc_cleanup() 2538 NLP_SET_FREE_REQ(ndlp); in lpfc_cleanup() 2541 lpfc_nlp_put(ndlp); in lpfc_cleanup() 2545 if (NLP_CHK_FREE_REQ(ndlp)) { in lpfc_cleanup() 2551 NLP_SET_FREE_REQ(ndlp); in lpfc_cleanup() 2555 ndlp->nlp_DID == Fabric_DID) { in lpfc_cleanup() [all …]
|
D | lpfc_debugfs.c | 533 struct lpfc_nodelist *ndlp; in lpfc_debugfs_nodelist_data() local 539 list_for_each_entry(ndlp, &vport->fc_nodes, nlp_listp) { in lpfc_debugfs_nodelist_data() 546 switch (ndlp->nlp_state) { in lpfc_debugfs_nodelist_data() 578 statep, ndlp->nlp_DID); in lpfc_debugfs_nodelist_data() 579 name = (unsigned char *)&ndlp->nlp_portname; in lpfc_debugfs_nodelist_data() 584 name = (unsigned char *)&ndlp->nlp_nodename; in lpfc_debugfs_nodelist_data() 589 if (ndlp->nlp_flag & NLP_RPI_REGISTERED) in lpfc_debugfs_nodelist_data() 591 ndlp->nlp_rpi); in lpfc_debugfs_nodelist_data() 595 ndlp->nlp_flag); in lpfc_debugfs_nodelist_data() 596 if (!ndlp->nlp_type) in lpfc_debugfs_nodelist_data() [all …]
|
D | lpfc_sli.h | 95 struct lpfc_nodelist *ndlp; member
|
D | lpfc_mbox.c | 2319 lpfc_resume_rpi(struct lpfcMboxq *mbox, struct lpfc_nodelist *ndlp) in lpfc_resume_rpi() argument 2321 struct lpfc_hba *phba = ndlp->phba; in lpfc_resume_rpi() 2328 phba->sli4_hba.rpi_ids[ndlp->nlp_rpi]); in lpfc_resume_rpi() 2330 resume_rpi->event_tag = ndlp->phba->fc_eventTag; in lpfc_resume_rpi()
|
D | lpfc_sli4.h | 630 struct lpfc_nodelist *ndlp; /* ndlp associated with IO */ member
|
D | lpfc_crtn.h | 101 int lpfc_nlp_not_used(struct lpfc_nodelist *ndlp);
|
/linux-4.1.27/Documentation/scsi/ |
D | ChangeLog.lpfc | 538 * 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 …]
|