diff options
author | James Smart <jsmart2021@gmail.com> | 2019-01-28 20:14:40 +0100 |
---|---|---|
committer | Martin K. Petersen <martin.petersen@oracle.com> | 2019-02-06 04:29:50 +0100 |
commit | c160c0f8063e4225c069ac904a3f2cf89dcb3a81 (patch) | |
tree | d28b86a5a9cf5caafdfc227975e762d28297b0a4 /drivers/scsi/lpfc/lpfc_vport.c | |
parent | scsi: lpfc: Correct upcalling nvmet_fc transport during io done downcall (diff) | |
download | linux-c160c0f8063e4225c069ac904a3f2cf89dcb3a81.tar.xz linux-c160c0f8063e4225c069ac904a3f2cf89dcb3a81.zip |
scsi: lpfc: Fix nvmet issues when link bounce under IO load
Various null pointer dereference and general protection fault panics occur
when there is a link bounce under load. There are a large number of "error"
message 6413 indicating "bad release".
The issues resolve to list corruptions due to missing or inconsistent lock
protection. Lockups are due to nested locks in the unsolicited abort
path. The unsolicited abort path calls the wrong abort processing
routine. There was also duplicate context release while aborts were still
active in the hardware.
Removed duplicate locks and added lock protection around list item
removal. Commonized lock handling around the abort processing routines.
Prevent context release while still in ABTS list.
Signed-off-by: Dick Kennedy <dick.kennedy@broadcom.com>
Signed-off-by: James Smart <jsmart2021@gmail.com>
Reviewed-by: Hannes Reinecke <hare@suse.com>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
Diffstat (limited to '')
0 files changed, 0 insertions, 0 deletions