diff options
author | James Smart <jsmart2021@gmail.com> | 2018-06-26 18:24:29 +0300 |
---|---|---|
committer | Martin K. Petersen <martin.petersen@oracle.com> | 2018-07-11 05:15:09 +0300 |
commit | b0e830125b669570d8096b8ba22eb00f659fc05e (patch) | |
tree | 4c597dd52c59cf4c0dbffea14d31f32772389303 /drivers/scsi/sgiwd93.c | |
parent | 6871e8144f935a1f08e7fc6269c894861ce494aa (diff) | |
download | linux-b0e830125b669570d8096b8ba22eb00f659fc05e.tar.xz |
scsi: lpfc: devloss timeout race condition caused null pointer reference
A race condition between the context of devloss timeout handler and I/O
completion caused devloss timeout handler de-referencing pointer that had
been released.
Added the check in lpfc_sli_validate_fcp_iocb() on LPFC_IO_ON_TXCMPLQ to
capture the race condition of I/O completion and devloss timeout handler
attemption for aborting the I/O. Also, added check on lpfc_cmd->rdata
pointer before de-referenceing lpfc_cmd->rdata->pnode.
Also, added protection in lpfc_sli_abort_iocb() routine on driver performed
FCP I/O FLUSHING already under way before proceeding to aborting I/Os.
Signed-off-by: Dick Kennedy <dick.kennedy@broadcom.com>
Signed-off-by: James Smart <james.smart@broadcom.com>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
Diffstat (limited to 'drivers/scsi/sgiwd93.c')
0 files changed, 0 insertions, 0 deletions