Commit 91f32d01 authored by James Smart's avatar James Smart Committed by James Bottomley

[SCSI] lpfc 8.3.40: Fix inconsistent list removal causes crash.

Signed-off-by: default avatarJames Smart <james.smart@emulex.com>
Signed-off-by: default avatarJames Bottomley <JBottomley@Parallels.com>
parent 61f35bff
......@@ -1011,17 +1011,6 @@ __lpfc_sli_release_iocbq_s4(struct lpfc_hba *phba, struct lpfc_iocbq *iocbq)
else
sglq = __lpfc_clear_active_sglq(phba, iocbq->sli4_lxritag);
/*
** This should have been removed from the txcmplq before calling
** iocbq_release. The normal completion
** path should have already done the list_del_init.
*/
if (unlikely(!list_empty(&iocbq->list))) {
if (iocbq->iocb_flag & LPFC_IO_ON_TXCMPLQ)
iocbq->iocb_flag &= ~LPFC_IO_ON_TXCMPLQ;
list_del_init(&iocbq->list);
}
if (sglq) {
if ((iocbq->iocb_flag & LPFC_EXCHANGE_BUSY) &&
......@@ -1070,13 +1059,6 @@ __lpfc_sli_release_iocbq_s3(struct lpfc_hba *phba, struct lpfc_iocbq *iocbq)
{
size_t start_clean = offsetof(struct lpfc_iocbq, iocb);
/*
** This should have been removed from the txcmplq before calling
** iocbq_release. The normal completion
** path should have already done the list_del_init.
*/
if (unlikely(!list_empty(&iocbq->list)))
list_del_init(&iocbq->list);
/*
* Clean all volatile data fields, preserve iotag and node struct.
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment