Commit 4c461932 authored by GangCao's avatar GangCao Committed by Daniel Verkamp
Browse files

Perf: only count into inflight IO when successfully sending



There is a case in high queue depth situation and the IO may be
failed due to no memory. Our perf tool did not recognize this
and always count the IO in the inflight IOs. Thus in the completion,
it waits more than actual IOs to return and the Perf is hanging.

Change-Id: Ie5472e260c75c5abd80c06eb6c613dc7d1761c78
Signed-off-by: default avatarGangCao <gang.cao@intel.com>
Reviewed-on: https://review.gerrithub.io/391582


Tested-by: default avatarSPDK Automated Test System <sys_sgsw@intel.com>
Reviewed-by: default avatarBen Walker <benjamin.walker@intel.com>
Reviewed-by: default avatarDaniel Verkamp <daniel.verkamp@intel.com>
parent 56905c38
Loading
Loading
Loading
Loading
+2 −2
Original line number Diff line number Diff line
@@ -497,10 +497,10 @@ submit_single_io(struct perf_task *task)

	if (rc != 0) {
		fprintf(stderr, "starting I/O failed\n");
	}

	} else {
		ns_ctx->current_queue_depth++;
	}
}

static void
task_complete(struct perf_task *task)