]> git.baikalelectronics.ru Git - kernel.git/commit
scsi: lpfc: Fix kernel Oops due to null pring pointers
authorJames Smart <jsmart2021@gmail.com>
Fri, 30 Nov 2018 00:09:32 +0000 (16:09 -0800)
committerMartin K. Petersen <martin.petersen@oracle.com>
Sat, 8 Dec 2018 03:35:32 +0000 (22:35 -0500)
commit0f13c901731e50fa083152bf480d0071de9aed6c
treef2073f16fb1c9fd2bed74791b7fe6828139a5865
parentd9c4ac36cd14c89f79aba0f513699c194fde71f3
scsi: lpfc: Fix kernel Oops due to null pring pointers

Driver is hitting null pring pointers in lpfc_do_work().

Pointer assignment occurs based on SLI-revision. If recovering after an
error, its possible the sli revision for the port was cleared, making the
lpfc_phba_elsring() not return a ring pointer, thus the null pointer.

Add SLI revision checking to lpfc_phba_elsring() and status checking to all
callers.

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