From 081d8a8458013be467eb92726fe4c158505d5fa9 Mon Sep 17 00:00:00 2001 From: Jim Harris Date: Tue, 19 Apr 2022 12:45:51 +0000 Subject: [PATCH] reduce: increase REDUCE_MAX_IOVECS to 33 A recent change to the bdevio test changed one of the tests from a 30x4K IO to a 30xLBA IO. This has started giving us nightly test failures (see issue #2499). It is because now the 30 * LBA (512B) is 15KB which all fits within one 16KiB reduce chunk, yet we only allocate REDUCE_MAX_IOVS (17) iovs per reduce IO context. Previously when they were 4KiB each, we would only need 4 iovecs (16KiB / 4KiB). We may need to think through this a bit more, to make this more dynamic (based on the chunk size and underlying block size), but for now let's at least increase this enough to handle the most common 16KiB chunk / 512B LBA case. While here, run bdevio as part of per-patch testing, that would have helped us catch this issue before the a6e022463 patch got merged. Fixes #2499. Signed-off-by: Jim Harris Change-Id: I2140c5b9d038b202edfdcbb2bfee059140f7703a Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/12672 Community-CI: Broadcom CI Community-CI: Mellanox Build Bot Tested-by: SPDK CI Jenkins Reviewed-by: Changpeng Liu Reviewed-by: Karol Latecki Reviewed-by: Tomasz Zawadzki --- include/spdk/reduce.h | 2 +- test/compress/compress.sh | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/include/spdk/reduce.h b/include/spdk/reduce.h index 03c996294..06f1b881f 100644 --- a/include/spdk/reduce.h +++ b/include/spdk/reduce.h @@ -41,7 +41,7 @@ #include "spdk/uuid.h" -#define REDUCE_MAX_IOVECS 17 +#define REDUCE_MAX_IOVECS 33 /** * Describes the parameters of an spdk_reduce_vol. diff --git a/test/compress/compress.sh b/test/compress/compress.sh index 7ee601227..03dd4a9ba 100755 --- a/test/compress/compress.sh +++ b/test/compress/compress.sh @@ -86,9 +86,9 @@ mkdir -p /tmp/pmem run_bdevperf 32 4096 3 run_bdevperf 32 4096 3 512 run_bdevperf 32 4096 3 4096 +run_bdevio if [ $RUN_NIGHTLY -eq 1 ]; then - run_bdevio run_bdevperf 64 16384 30 # run perf on nvmf target w/compressed vols