]> git.baikalelectronics.ru Git - kernel.git/commit
scsi: lpfc: Fix crash after firmware flash when IO is running.
authorJames Smart <jsmart2021@gmail.com>
Fri, 16 Jun 2017 05:56:47 +0000 (22:56 -0700)
committerMartin K. Petersen <martin.petersen@oracle.com>
Tue, 20 Jun 2017 01:40:33 +0000 (21:40 -0400)
commit150c96584659ffb0bc0c38711016bfb63b61d639
treefef68d8873829819a1a618d36f86d93ab88295e3
parent51885e3aca9e7ebbf10c9a32e2d70efb2f910d83
scsi: lpfc: Fix crash after firmware flash when IO is running.

OS crashes after the completion of firmware download.

Failure in posting SCSI SGL buffers because number of SGL buffers is
less than total count. Some of the pending IOs are not completed by
driver. SGL buffers for these IOs are not added back to the list.
Pending IOs are not completed because lpfc_wq_list list is initialized
before completion of pending IOs.

Postpone lpfc_wq_list reinitialization by moving
lpfc_sli4_queue_destroy() after lpfc_hba_down_post().

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>
drivers/scsi/lpfc/lpfc_sli.c