Message ID | 1478362768-19895-1-git-send-email-varun@chelsio.com (mailing list archive) |
---|---|
State | Accepted, archived |
Headers | show |
>>>>> "Varun" == Varun Prakash <varun@chelsio.com> writes:
Varun> Before calling task_release_itt() task data is memset to zero
Varun> because of which DDP context information is lost resulting in
Varun> incorrect DDP resource cleanup, to fix this call
Varun> task_release_itt() before memset.
Applied to 4.9/scsi-fixes.
diff --git a/drivers/scsi/cxgbi/libcxgbi.c b/drivers/scsi/cxgbi/libcxgbi.c index d142113..2ffe029 100644 --- a/drivers/scsi/cxgbi/libcxgbi.c +++ b/drivers/scsi/cxgbi/libcxgbi.c @@ -2081,9 +2081,10 @@ void cxgbi_cleanup_task(struct iscsi_task *task) /* never reached the xmit task callout */ if (tdata->skb) __kfree_skb(tdata->skb); - memset(tdata, 0, sizeof(*tdata)); task_release_itt(task, task->hdr_itt); + memset(tdata, 0, sizeof(*tdata)); + iscsi_tcp_cleanup_task(task); } EXPORT_SYMBOL_GPL(cxgbi_cleanup_task);
Before calling task_release_itt() task data is memset to zero because of which DDP context information is lost resulting in incorrect DDP resource cleanup, to fix this call task_release_itt() before memset. Signed-off-by: Varun Prakash <varun@chelsio.com> --- drivers/scsi/cxgbi/libcxgbi.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-)