@@ -3024,6 +3024,7 @@ lpfc_cmpl_els_logo(struct lpfc_hba *phba, struct lpfc_iocbq *cmdiocb,
30243024 ndlp -> nlp_DID , ulp_status ,
30253025 ulp_word4 );
30263026
3027+ /* Call NLP_EVT_DEVICE_RM if link is down or LOGO is aborted */
30273028 if (lpfc_error_lost_link (vport , ulp_status , ulp_word4 ))
30283029 skip_recovery = 1 ;
30293030 }
@@ -3306,7 +3307,8 @@ lpfc_reg_fab_ctrl_node(struct lpfc_vport *vport, struct lpfc_nodelist *fc_ndlp)
33063307 *
33073308 * This routine is a generic completion callback function for Discovery ELS cmd.
33083309 * Currently used by the ELS command issuing routines for the ELS State Change
3309- * Request (SCR), lpfc_issue_els_scr() and the ELS RDF, lpfc_issue_els_rdf().
3310+ * Request (SCR), lpfc_issue_els_scr(), Exchange Diagnostic Capabilities (EDC),
3311+ * lpfc_issue_els_edc() and the ELS RDF, lpfc_issue_els_rdf().
33103312 * These commands will be retried once only for ELS timeout errors.
33113313 **/
33123314static void
@@ -3705,10 +3707,7 @@ lpfc_issue_els_farpr(struct lpfc_vport *vport, uint32_t nportid, uint8_t retry)
37053707 lpfc_nlp_put (ndlp );
37063708 return 1 ;
37073709 }
3708- /* This will cause the callback-function lpfc_cmpl_els_cmd to
3709- * trigger the release of the node.
3710- */
3711- /* Don't release reference count as RDF is likely outstanding */
3710+
37123711 return 0 ;
37133712}
37143713
@@ -4299,7 +4298,7 @@ lpfc_issue_els_edc(struct lpfc_vport *vport, uint8_t retry)
42994298 rc = lpfc_sli_issue_iocb (phba , LPFC_ELS_RING , elsiocb , 0 );
43004299 if (rc == IOCB_ERROR ) {
43014300 /* The additional lpfc_nlp_put will cause the following
4302- * lpfc_els_free_iocb routine to trigger the rlease of
4301+ * lpfc_els_free_iocb routine to trigger the release of
43034302 * the node.
43044303 */
43054304 lpfc_els_free_iocb (phba , elsiocb );
@@ -5127,7 +5126,7 @@ lpfc_els_free_iocb(struct lpfc_hba *phba, struct lpfc_iocbq *elsiocb)
51275126{
51285127 struct lpfc_dmabuf * buf_ptr , * buf_ptr1 ;
51295128
5130- /* The I/O iocb is complete. Clear the node and first dmbuf */
5129+ /* The I/O iocb is complete. Clear the node and first dmabuf */
51315130 elsiocb -> ndlp = NULL ;
51325131
51335132 /* cmd_dmabuf = cmd, cmd_dmabuf->next = rsp, bpl_dmabuf = bpl */
@@ -8734,7 +8733,7 @@ lpfc_els_rcv_rls(struct lpfc_vport *vport, struct lpfc_iocbq *cmdiocb,
87348733 * @cmdiocb: pointer to lpfc command iocb data structure.
87358734 * @ndlp: pointer to a node-list data structure.
87368735 *
8737- * This routine processes Read Timout Value (RTV) IOCB received as an
8736+ * This routine processes Read Timeout Value (RTV) IOCB received as an
87388737 * ELS unsolicited event. It first checks the remote port state. If the
87398738 * remote port is not in NLP_STE_UNMAPPED_NODE state or NLP_STE_MAPPED_NODE
87408739 * state, it invokes the lpfc_els_rsl_reject() routine to send the reject
@@ -10843,7 +10842,7 @@ lpfc_els_unsol_event(struct lpfc_hba *phba, struct lpfc_sli_ring *pring,
1084310842 lpfc_els_unsol_buffer (phba , pring , vport , elsiocb );
1084410843 /*
1084510844 * The different unsolicited event handlers would tell us
10846- * if they are done with "mp" by setting cmd_dmabuf to NULL.
10845+ * if they are done with "mp" by setting cmd_dmabuf/bpl_dmabuf to NULL.
1084710846 */
1084810847 if (elsiocb -> cmd_dmabuf ) {
1084910848 lpfc_in_buf_free (phba , elsiocb -> cmd_dmabuf );
0 commit comments