From 552a26d9d9ea41738b8264f5677be3c63f44aa47 Mon Sep 17 00:00:00 2001 From: Damiano Cipriani Date: Thu, 15 Sep 2022 16:50:57 +0200 Subject: [PATCH] spdk_dd: Add check on block size If passed as a parameter, block size must be a multiple of input native block size, so a check to control this requirement has been added Signed-off-by: Damiano Cipriani Change-Id: I38c41afd421083ba0864d5066d9978cb29bdaed6 Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/14554 Community-CI: Mellanox Build Bot Tested-by: SPDK CI Jenkins Reviewed-by: Jim Harris Reviewed-by: Ben Walker Reviewed-by: Aleksey Marchuk --- app/spdk_dd/spdk_dd.c | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/app/spdk_dd/spdk_dd.c b/app/spdk_dd/spdk_dd.c index e0d25a824..cf6ab936a 100644 --- a/app/spdk_dd/spdk_dd.c +++ b/app/spdk_dd/spdk_dd.c @@ -884,6 +884,13 @@ dd_run(void *arg1) return; } + if (g_opts.input_bdev && g_opts.io_unit_size % g_job.input.block_size != 0) { + SPDK_ERRLOG("--bs value must be a multiple of input native block size (%d)\n", + g_job.input.block_size); + dd_exit(-EINVAL); + return; + } + g_job.ios = calloc(g_opts.queue_depth, sizeof(struct dd_io)); if (g_job.ios == NULL) { SPDK_ERRLOG("%s\n", strerror(ENOMEM));