linux/drivers/scsi/lpfc
James Smart 005d8eb928 scsi: lpfc: Fix nvme target mode ABTSing a received ABTS
If an unsolicited ABTS was received, the driver looks up the exchange it
references. It it does various searches looking for the exchange
context. When one is eventually matched and it is associated with an XRI
context, the driver sends an ABORT WQE to terminate the exchange. Current
code looks at whether the transport had taken action on the XRI yet or not
(no action if set to LPFC_NVMET_STE_RCV; action if non-LPFC_NVMET_STE_RCV).
Based on action or not one of two (sol vs unsol) issue abort routines are
called. The unsol version cheats and transmits a sequence containing an
ABTS with no interaction with the adapter.  The sol version issues an Abort
WQE and lets the adapter manage whether the ABTS is sent to not.

The issue is the unsol version is sending ABTS unconditionally for the
exchange that received the ABTS. It's unnecessary.

Remove the conditional and just call the adapter command-based routine to
let the adapter manage the ABTS.

Signed-off-by: Dick Kennedy <dick.kennedy@broadcom.com>
Signed-off-by: James Smart <jsmart2021@gmail.com>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
2019-08-19 22:41:10 -04:00
..
lpfc_attr.c scsi: lpfc: Fix sg_seg_cnt for HBAs that don't support NVME 2019-08-19 22:41:10 -04:00
lpfc_attr.h
lpfc_bsg.c scsi: lpfc: remove redundant code 2019-08-19 22:07:50 -04:00
lpfc_bsg.h scsi: lpfc: Update Copyright in driver version 2019-03-19 13:15:10 -04:00
lpfc_compat.h
lpfc_crtn.h scsi: lpfc: Fix hang when downloading fw on port enabled for nvme 2019-08-19 22:41:10 -04:00
lpfc_ct.c scsi: lpfc: Fix loss of remote port after devloss due to lack of RPIs 2019-08-19 22:41:09 -04:00
lpfc_debugfs.c scsi: lpfc: change snprintf to scnprintf for possible overflow 2019-03-25 22:14:16 -04:00
lpfc_debugfs.h scsi: lpfc: reduce stack size with CONFIG_GCC_PLUGIN_STRUCTLEAK_VERBOSE 2019-07-11 20:42:30 -04:00
lpfc_disc.h scsi: lpfc: Fix PLOGI failure with high remoteport count 2019-08-19 22:41:08 -04:00
lpfc_els.c scsi: lpfc: Fix driver nvme rescan logging 2019-08-19 22:41:10 -04:00
lpfc_hbadisc.c scsi: lpfc: Fix deadlock on host_lock during cable pulls 2019-08-19 22:41:10 -04:00
lpfc_hw4.h scsi: lpfc: Move trunk_errmsg[] from a header file into a .c file 2019-04-03 23:11:36 -04:00
lpfc_hw.h scsi: lpfc: Fix ELS field alignments 2019-08-19 22:41:08 -04:00
lpfc_ids.h
lpfc_init.c scsi: lpfc: Fix hang when downloading fw on port enabled for nvme 2019-08-19 22:41:10 -04:00
lpfc_logmsg.h
lpfc_mbox.c SCSI misc on 20190306 2019-03-09 16:53:47 -08:00
lpfc_mem.c scsi: lpfc: remove NULL check before some freeing functions 2019-08-19 22:21:57 -04:00
lpfc_nl.h
lpfc_nportdisc.c scsi: lpfc: Fix ADISC reception terminating login state if a NVME target 2019-08-19 22:41:09 -04:00
lpfc_nvme.c scsi: lpfc: Fix hang when downloading fw on port enabled for nvme 2019-08-19 22:41:10 -04:00
lpfc_nvme.h SCSI misc on 20190306 2019-03-09 16:53:47 -08:00
lpfc_nvmet.c scsi: lpfc: Fix nvme target mode ABTSing a received ABTS 2019-08-19 22:41:10 -04:00
lpfc_nvmet.h scsi: lpfc: Fix nvmet handling of received ABTS for unmapped frames 2019-06-18 19:46:21 -04:00
lpfc_scsi.c scsi: lpfc: Fix too many sg segments spamming in kernel log 2019-08-19 22:41:10 -04:00
lpfc_scsi.h scsi: lpfc: Update 12.2.0.0 file copyrights to 2019 2019-02-05 22:29:50 -05:00
lpfc_sli4.h scsi: lpfc: Fix poor use of hardware queues if fewer irq vectors 2019-06-18 19:46:22 -04:00
lpfc_sli.c scsi: lpfc: Fix hang when downloading fw on port enabled for nvme 2019-08-19 22:41:10 -04:00
lpfc_sli.h scsi: lpfc: Coordinate adapter error handling with offline handling 2019-03-19 12:57:02 -04:00
lpfc_version.h scsi: lpfc: Update lpfc version to 12.2.0.3 2019-06-18 19:46:22 -04:00
lpfc_vport.c scsi: lpfc: Fix issuing init_vpi mbox on SLI-3 card 2019-08-19 22:41:09 -04:00
lpfc_vport.h
lpfc.h lpfc: add sysfs interface to post NVME RSCN 2019-06-21 11:08:38 +02:00
Makefile