aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/scsi/lpfc/lpfc_nportdisc.c
diff options
context:
space:
mode:
authorJames.Smart@Emulex.Com <James.Smart@Emulex.Com>2005-06-25 10:34:33 -0400
committerJames Bottomley <jejb@mulgrave.(none)>2005-07-02 19:58:48 -0400
commit2501322eee84763a07fd4a3eed81b63c1837e204 (patch)
treeb256f2185fdcca3c4c6087e4c989ac1a3de9a622 /drivers/scsi/lpfc/lpfc_nportdisc.c
parent5eb95af086f5d2e554bb119f3cb71f7ca38bfe85 (diff)
[SCSI] lpfc: Fix ADISC completion incorrectly putting initiators on mapped list
Symptom - An unmapped node (initiator) that goes away in a situation such as cable pull, comes back as a mapped node. Fix - On ADISC completion, put a list on the mapped list only if it is a FCP_TARGET. Signed-off-by: James Smart <James.Smart@emulex.com> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
Diffstat (limited to 'drivers/scsi/lpfc/lpfc_nportdisc.c')
-rw-r--r--drivers/scsi/lpfc/lpfc_nportdisc.c9
1 files changed, 7 insertions, 2 deletions
diff --git a/drivers/scsi/lpfc/lpfc_nportdisc.c b/drivers/scsi/lpfc/lpfc_nportdisc.c
index e7470a4738c5..421356eabc22 100644
--- a/drivers/scsi/lpfc/lpfc_nportdisc.c
+++ b/drivers/scsi/lpfc/lpfc_nportdisc.c
@@ -950,8 +950,13 @@ lpfc_cmpl_adisc_adisc_issue(struct lpfc_hba * phba,
950 lpfc_unreg_rpi(phba, ndlp); 950 lpfc_unreg_rpi(phba, ndlp);
951 return (ndlp->nlp_state); 951 return (ndlp->nlp_state);
952 } 952 }
953 ndlp->nlp_state = NLP_STE_MAPPED_NODE; 953 if (ndlp->nlp_type & NLP_FCP_TARGET) {
954 lpfc_nlp_list(phba, ndlp, NLP_MAPPED_LIST); 954 ndlp->nlp_state = NLP_STE_MAPPED_NODE;
955 lpfc_nlp_list(phba, ndlp, NLP_MAPPED_LIST);
956 } else {
957 ndlp->nlp_state = NLP_STE_UNMAPPED_NODE;
958 lpfc_nlp_list(phba, ndlp, NLP_UNMAPPED_LIST);
959 }
955 return (ndlp->nlp_state); 960 return (ndlp->nlp_state);
956} 961}
957 962