diff --git a/lib/iscsi/conn.c b/lib/iscsi/conn.c index 7b506aff6..ef62e5207 100644 --- a/lib/iscsi/conn.c +++ b/lib/iscsi/conn.c @@ -368,6 +368,7 @@ spdk_iscsi_conn_free_pdu(struct spdk_iscsi_conn *conn, struct spdk_iscsi_pdu *pd conn->data_in_cnt--; spdk_iscsi_task_put(spdk_iscsi_task_get_primary(pdu->task)); } + spdk_iscsi_conn_handle_queued_datain_tasks(conn); } } else if (pdu->bhs.opcode == ISCSI_OP_SCSI_RSP && pdu->task->scsi.status != SPDK_SCSI_STATUS_GOOD) { @@ -1067,8 +1068,6 @@ process_read_task_completion(struct spdk_iscsi_conn *conn, spdk_iscsi_task_put(task); } process_completed_read_subtask_list(conn, primary); - - spdk_iscsi_conn_handle_queued_datain_tasks(conn); } void