Message ID | 20170110110554.13770-1-jthumshirn@suse.de (mailing list archive) |
---|---|
State | Accepted, archived |
Headers | show |
[+Cc James S. I'm sorry] On Tue, Jan 10, 2017 at 12:05:54PM +0100, Johannes Thumshirn wrote: > Set the elsiocb contexts to NULL after freeing as others depend on it. > > Signed-off-by: Johannes Thumshirn <jthumshirn@suse.de> > --- > drivers/scsi/lpfc/lpfc_els.c | 2 ++ > 1 file changed, 2 insertions(+) > > diff --git a/drivers/scsi/lpfc/lpfc_els.c b/drivers/scsi/lpfc/lpfc_els.c > index 236e4e5..7b6bd8e 100644 > --- a/drivers/scsi/lpfc/lpfc_els.c > +++ b/drivers/scsi/lpfc/lpfc_els.c > @@ -3590,12 +3590,14 @@ lpfc_els_free_iocb(struct lpfc_hba *phba, struct lpfc_iocbq *elsiocb) > } else { > buf_ptr1 = (struct lpfc_dmabuf *) elsiocb->context2; > lpfc_els_free_data(phba, buf_ptr1); > + elsiocb->context2 = NULL; > } > } > > if (elsiocb->context3) { > buf_ptr = (struct lpfc_dmabuf *) elsiocb->context3; > lpfc_els_free_bpl(phba, buf_ptr); > + elsiocb->context3 = NULL; > } > lpfc_sli_release_iocbq(phba, elsiocb); > return 0; Dick, James, any comments? I'd really like to get this in soon as it solves customer issues. Byte, Johannes
>>>>> "Johannes" == Johannes Thumshirn <jthumshirn@suse.de> writes:
Johannes> Dick, James, any comments? I'd really like to get this in soon
Johannes> as it solves customer issues.
Ping?
>>>>> "Johannes" == Johannes Thumshirn <jthumshirn@suse.de> writes:
Johannes> Set the elsiocb contexts to NULL after freeing as others
Johannes> depend on it.
Applied to 4.11/scsi-queue.
>>>>> "Martin" == Martin K Petersen <martin.petersen@oracle.com> writes: >>>>> "Johannes" == Johannes Thumshirn <jthumshirn@suse.de> writes: Johannes> Set the elsiocb contexts to NULL after freeing as others Johannes> depend on it. Martin> Applied to 4.11/scsi-queue. Replied to the wrong mail, sorry. This fix is already upstream.
diff --git a/drivers/scsi/lpfc/lpfc_els.c b/drivers/scsi/lpfc/lpfc_els.c index 236e4e5..7b6bd8e 100644 --- a/drivers/scsi/lpfc/lpfc_els.c +++ b/drivers/scsi/lpfc/lpfc_els.c @@ -3590,12 +3590,14 @@ lpfc_els_free_iocb(struct lpfc_hba *phba, struct lpfc_iocbq *elsiocb) } else { buf_ptr1 = (struct lpfc_dmabuf *) elsiocb->context2; lpfc_els_free_data(phba, buf_ptr1); + elsiocb->context2 = NULL; } } if (elsiocb->context3) { buf_ptr = (struct lpfc_dmabuf *) elsiocb->context3; lpfc_els_free_bpl(phba, buf_ptr); + elsiocb->context3 = NULL; } lpfc_sli_release_iocbq(phba, elsiocb); return 0;
Set the elsiocb contexts to NULL after freeing as others depend on it. Signed-off-by: Johannes Thumshirn <jthumshirn@suse.de> --- drivers/scsi/lpfc/lpfc_els.c | 2 ++ 1 file changed, 2 insertions(+)