X-Git-Url: https://git.kernel.dk/?p=fio.git;a=blobdiff_plain;f=lib%2Fgauss.c;h=f974490f72a512465a2ee3e534031418833da539;hp=afd0490d54786130acf04e0bb3c64bd8a4473bbd;hb=8c5e96a4ee7004b2982b5d5247ecea1cb96bccb7;hpb=c3546b531f48a2ff413c9508aed465e0145c8dfc diff --git a/lib/gauss.c b/lib/gauss.c index afd0490d..f974490f 100644 --- a/lib/gauss.c +++ b/lib/gauss.c @@ -38,7 +38,10 @@ unsigned long long gauss_next(struct gauss_state *gs) sum += dev; } - return __hash_u64(sum) % gs->nranges; + if (!gs->disable_hash) + sum = __hash_u64(sum); + + return sum % gs->nranges; } void gauss_init(struct gauss_state *gs, unsigned long nranges, double dev, @@ -54,3 +57,8 @@ void gauss_init(struct gauss_state *gs, unsigned long nranges, double dev, gs->stddev = nranges / 2; } } + +void gauss_disable_hash(struct gauss_state *gs) +{ + gs->disable_hash = true; +}