Commit b2cfb6b4 authored by Jacek Kalwas's avatar Jacek Kalwas Committed by Tomasz Zawadzki
Browse files

bdevperf: fix non expected reads for verify flow



SPDK_BDEV_IO_TYPE_READ can be set within bdevperf_submit_single based
on rw_percentage. However, for verify flow read shall be done on write
completion callback only.

Fix by change rw_percentage to 0. It will prevent setting
SPDK_BDEV_IO_TYPE_READ in bdevperf_submit_single by conditions
already existing there.

Change-Id: Ica135e8aedbca4693c546a3bf8498dd4b3ce11ef
Signed-off-by: default avatarJacek Kalwas <jacek.kalwas@intel.com>
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/22473


Tested-by: default avatarSPDK CI Jenkins <sys_sgci@intel.com>
Reviewed-by: default avatarJim Harris <jim.harris@samsung.com>
Reviewed-by: default avatarKonrad Sztyber <konrad.sztyber@intel.com>
Community-CI: Mellanox Build Bot
parent c7c25930
Loading
Loading
Loading
Loading
+4 −1
Original line number Diff line number Diff line
@@ -1292,6 +1292,7 @@ bdevperf_submit_single(struct bdevperf_job *job, struct bdevperf_task *task)
		task->io_type = SPDK_BDEV_IO_TYPE_WRITE_ZEROES;
	} else if ((job->rw_percentage == 100) ||
		   (job->rw_percentage != 0 && ((rand_r(&job->seed) % 100) < job->rw_percentage))) {
		assert(!job->verify);
		task->io_type = SPDK_BDEV_IO_TYPE_READ;
	} else {
		if (job->verify || job->reset || g_unique_writes) {
@@ -1706,7 +1707,9 @@ job_init_rw(struct bdevperf_job *job, enum job_config_rw rw)
		break;
	case JOB_CONFIG_RW_VERIFY:
		job->verify = true;
		job->rw_percentage = 50;
		/* For verify flow read is done on write completion
		 * callback only, rw_percentage shall not be used. */
		job->rw_percentage = 0;
		break;
	case JOB_CONFIG_RW_RESET:
		job->reset = true;