iscsi: avoid use-after-free of iSCSI task

Change-Id: I29d3f856a1189fc591097488829ded8a508fbed6
Signed-off-by: Daniel Verkamp <daniel.verkamp@intel.com>
Reviewed-on: https://review.gerrithub.io/364670
Reviewed-by: Ben Walker <benjamin.walker@intel.com>
Tested-by: SPDK Automated Test System <sys_sgsw@intel.com>
This commit is contained in:
Daniel Verkamp 2017-06-08 09:55:21 -07:00
parent 7c418a74cb
commit 724aa0139c

View File

@ -45,9 +45,9 @@ spdk_iscsi_task_free(struct spdk_scsi_task *scsi_task)
struct spdk_iscsi_task *task = spdk_iscsi_task_from_scsi_task(scsi_task); struct spdk_iscsi_task *task = spdk_iscsi_task_from_scsi_task(scsi_task);
spdk_iscsi_task_disassociate_pdu(task); spdk_iscsi_task_disassociate_pdu(task);
rte_mempool_put(g_spdk_iscsi.task_pool, (void *)task);
assert(task->conn->pending_task_cnt > 0); assert(task->conn->pending_task_cnt > 0);
task->conn->pending_task_cnt--; task->conn->pending_task_cnt--;
rte_mempool_put(g_spdk_iscsi.task_pool, (void *)task);
} }
struct spdk_iscsi_task * struct spdk_iscsi_task *