Commit 4cd7ca9b authored by Jim Harris's avatar Jim Harris
Browse files

accel_perf: assign task->worker when building tasks_pool



Previously we would only assign the worker in _get_task().
But future patches will use _get_task() for each I/O,
not just during startup.

Also increment the current_queue_depth during startup
only, rather than every time _get_task() is called.

Signed-off-by: default avatarJim Harris <james.r.harris@intel.com>
Change-Id: I2713591d36b8353eaab8119ee230261f40857019
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/8449


Tested-by: default avatarSPDK CI Jenkins <sys_sgci@intel.com>
Reviewed-by: default avatarPaul Luse <paul.e.luse@intel.com>
Reviewed-by: default avatarBen Walker <benjamin.walker@intel.com>
Reviewed-by: default avatarZiye Yang <ziye.yang@intel.com>
Reviewed-by: default avatarChangpeng Liu <changpeng.liu@intel.com>
Reviewed-by: default avatarAleksey Marchuk <alexeymar@mellanox.com>
Community-CI: Mellanox Build Bot
parent 127fc0d0
Loading
Loading
Loading
Loading
+3 −2
Original line number Diff line number Diff line
@@ -318,8 +318,6 @@ _get_task(struct worker_thread *worker)
		return NULL;
	}

	task->worker = worker;
	task->worker->current_queue_depth++;
	return task;
}

@@ -814,6 +812,7 @@ _init_thread(void *arg1)
	task = worker->task_base;
	for (i = 0; i < num_tasks; i++) {
		TAILQ_INSERT_TAIL(&worker->tasks_pool, task, link);
		task->worker = worker;
		if (_get_task_data_bufs(task)) {
			fprintf(stderr, "Unable to get data bufs\n");
			goto error;
@@ -844,6 +843,7 @@ _init_thread(void *arg1)

			for (i = 0; i < g_ops_per_batch; i++) {
				task = _get_task(worker);
				worker->current_queue_depth++;
				if (task == NULL) {
					goto error;
				}
@@ -873,6 +873,7 @@ _init_thread(void *arg1)
	/* Submit as singles when no batching is enabled or we ran out of batches. */
	for (i = 0; i < remaining; i++) {
		task = _get_task(worker);
		worker->current_queue_depth++;
		if (task == NULL) {
			goto error;
		}