OpenCloudOS-Kernel/drivers/scsi/lpfc
James Smart b95e29b75d scsi: lpfc: Fix receive PRLI handling
Handling a rcv'ed PRLI incorrectly can cause the ndlp to end up in the
wrong state or the driver to ACC and PRLI when it should send LS_RJT.

The cause was due to the driver not properly looking at the PRLI type
and taking the multiple protocol support into consideration.

Resolved by adding checks in the various PRLI receive points to validate
PRLI type and reject if not valid for the enabled protocols and mode
(host vs target).

Signed-off-by: Dick Kennedy <dick.kennedy@broadcom.com>
Signed-off-by: James Smart <james.smart@broadcom.com>
Reviewed-by: Hannes Reinecke <hare@suse.com>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
2017-12-20 21:11:45 -05:00
..
Makefile scsi: lpfc: Update copyrights 2017-02-22 18:41:44 -05:00
lpfc.h scsi: lpfc: Fix random heartbeat timeouts during heavy IO 2017-12-20 21:11:44 -05:00
lpfc_attr.c scsi: lpfc: small sg cnt cleanup 2017-12-04 20:32:55 -05:00
lpfc_attr.h scsi: lpfc: Add Buffer to Buffer credit recovery support 2017-08-24 22:29:43 -04:00
lpfc_bsg.c scsi: lpfc: Fix crash receiving ELS while detaching driver 2017-10-02 22:46:33 -04:00
lpfc_bsg.h scsi: lpfc: Update copyrights 2017-02-22 18:41:44 -05:00
lpfc_compat.h scsi: lpfc: Update copyrights 2017-02-22 18:41:44 -05:00
lpfc_crtn.h scsi: lpfc: Fix driver handling of nvme resources during unload 2017-12-04 20:32:55 -05:00
lpfc_ct.c scsi: lpfc: Linux LPFC driver does not process all RSCNs 2017-12-04 20:32:54 -05:00
lpfc_debugfs.c scsi: lpfc: Adjust default value of lpfc_nvmet_mrq 2017-12-04 20:32:54 -05:00
lpfc_debugfs.h scsi: lpfc: avoid false-positive gcc-8 warning 2017-08-25 18:26:52 -04:00
lpfc_disc.h scsi: lpfc: Correct driver deregistrations with host nvme transport 2017-12-04 20:32:54 -05:00
lpfc_els.c scsi: lpfc: Fix receive PRLI handling 2017-12-20 21:11:45 -05:00
lpfc_hbadisc.c scsi: lpfc: correct port registrations with nvme_fc 2017-12-04 20:32:54 -05:00
lpfc_hw.h scsi: lpfc: Add Buffer to Buffer credit recovery support 2017-08-24 22:29:43 -04:00
lpfc_hw4.h scsi: lpfc: Expand WQE capability of every NVME hardware queue 2017-12-04 20:32:53 -05:00
lpfc_ids.h scsi: lpfc: Update copyrights 2017-02-22 18:41:44 -05:00
lpfc_init.c scsi: lpfc: Fix random heartbeat timeouts during heavy IO 2017-12-20 21:11:44 -05:00
lpfc_logmsg.h scsi: lpfc: Update copyrights 2017-02-22 18:41:44 -05:00
lpfc_mbox.c scsi: lpfc: Add Buffer to Buffer credit recovery support 2017-08-24 22:29:43 -04:00
lpfc_mem.c scsi: lpfc: Replace PCI pool old API 2017-08-07 14:04:01 -04:00
lpfc_nl.h scsi: lpfc: Update copyrights 2017-02-22 18:41:44 -05:00
lpfc_nportdisc.c scsi: lpfc: Fix receive PRLI handling 2017-12-20 21:11:45 -05:00
lpfc_nvme.c scsi: lpfc: Fix random heartbeat timeouts during heavy IO 2017-12-20 21:11:44 -05:00
lpfc_nvme.h scsi: lpfc: Fix random heartbeat timeouts during heavy IO 2017-12-20 21:11:44 -05:00
lpfc_nvmet.c scsi: lpfc: Fix -EOVERFLOW behavior for NVMET and defer_rcv 2017-12-20 21:11:45 -05:00
lpfc_nvmet.h scsi: lpfc: Fix -EOVERFLOW behavior for NVMET and defer_rcv 2017-12-20 21:11:45 -05:00
lpfc_scsi.c scsi: lpfc: Convert timers to use timer_setup() 2017-11-01 11:27:07 -07:00
lpfc_scsi.h scsi: lpfc: Update copyrights 2017-02-22 18:41:44 -05:00
lpfc_sli.c scsi: lpfc: Fix -EOVERFLOW behavior for NVMET and defer_rcv 2017-12-20 21:11:45 -05:00
lpfc_sli.h scsi: lpfc: Add auto EQ delay logic 2017-06-12 21:37:31 -04:00
lpfc_sli4.h scsi: lpfc: Handle XRI_ABORTED_CQE in soft IRQ 2017-12-04 20:32:53 -05:00
lpfc_version.h scsi: lpfc: update driver version to 11.4.0.5 2017-12-04 20:32:55 -05:00
lpfc_vport.c scsi: lpfc: Disable NPIV support if NVME is enabled 2017-10-02 22:46:39 -04:00
lpfc_vport.h scsi: lpfc: Update copyrights 2017-02-22 18:41:44 -05:00