[SCSI] lpfc 8.3.19: Fix critical errors and crashes
Fix critical errors and crashes - Replace LOF_SECURITY with LOG_SECURITY - When calculating diag test memory size, use full size with header. - Return LS_RJT with status=UNSUPPORTED on unrecognized ELS's - Correct NULL pointer dereference when lpfc_create_vport_work_array() returns NULL. - Added code to handle CVL when port is in LPFC_VPORT_FAILED state. - In lpfc_do_scr_ns_plogi, check the nodelist for FDMI_DID and reuse the resource. - Check for generic request 64 and calculate the sgl offset for the request and reply sgls, also calculate the xmit length using only the request bde. Signed-off-by: Alex Iannicelli <alex.iannicelli@emulex.com> Signed-off-by: James Smart <james.smart@emulex.com> Signed-off-by: James Bottomley <James.Bottomley@suse.de>
This commit is contained in:
committed by
James Bottomley
parent
98db519573
commit
63e801ce68
@@ -3247,10 +3247,12 @@ lpfc_sli4_perform_vport_cvl(struct lpfc_vport *vport)
|
||||
if (!ndlp)
|
||||
return 0;
|
||||
}
|
||||
if (phba->pport->port_state < LPFC_FLOGI)
|
||||
if ((phba->pport->port_state < LPFC_FLOGI) &&
|
||||
(phba->pport->port_state != LPFC_VPORT_FAILED))
|
||||
return NULL;
|
||||
/* If virtual link is not yet instantiated ignore CVL */
|
||||
if ((vport != phba->pport) && (vport->port_state < LPFC_FDISC))
|
||||
if ((vport != phba->pport) && (vport->port_state < LPFC_FDISC)
|
||||
&& (vport->port_state != LPFC_VPORT_FAILED))
|
||||
return NULL;
|
||||
shost = lpfc_shost_from_vport(vport);
|
||||
if (!shost)
|
||||
|
Reference in New Issue
Block a user