Zipf theta must be different than 1.0
Signed-off-by: Jens Axboe <axboe@kernel.dk>
diff --git a/options.c b/options.c
index c240692..ae85988 100644
--- a/options.c
+++ b/options.c
@@ -750,9 +750,13 @@
free(nr);
- if (td->o.random_distribution == FIO_RAND_DIST_ZIPF)
+ if (td->o.random_distribution == FIO_RAND_DIST_ZIPF) {
+ if (val == 1.00) {
+ log_err("fio: zipf theta must different than 1.0\n");
+ return 1;
+ }
td->o.zipf_theta = val;
- else {
+ } else {
if (val <= 0.00 || val >= 1.00) {
log_err("fio: pareto input out of range (0 < input < 1.0)\n");
return 1;
diff --git a/t/genzipf.c b/t/genzipf.c
index dfb8992..e625def 100644
--- a/t/genzipf.c
+++ b/t/genzipf.c
@@ -141,6 +141,10 @@
printf("pareto input must be > 0.00 and < 1.00\n");
return 1;
}
+ if (val == 1.0 && use_zipf) {
+ printf("zipf input must be different than 1.0\n");
+ return 1;
+ }
nranges = DEF_NR;
output_nranges = DEF_NR_OUTPUT;