fio: fix aio trim completion latencies
[fio.git] / lib / zipf.h
index c66b06407ef498a22546d6a7421cb904180cd8f4..16b65f57f146f0247581f52f2aee8fcf455b1694 100644 (file)
@@ -3,6 +3,7 @@
 
 #include <inttypes.h>
 #include "rand.h"
+#include "types.h"
 
 struct zipf_state {
        uint64_t nranges;
@@ -11,12 +12,15 @@ struct zipf_state {
        double zetan;
        double pareto_pow;
        struct frand_state rand;
+       uint64_t rand_off;
+       bool disable_hash;
 };
 
-void zipf_init(struct zipf_state *zs, unsigned long nranges, double theta);
-unsigned long long zipf_next(struct zipf_state *zs);
+void zipf_init(struct zipf_state *zs, uint64_t nranges, double theta, unsigned int seed);
+uint64_t zipf_next(struct zipf_state *zs);
 
-void pareto_init(struct zipf_state *zs, unsigned long nranges, double h);
-unsigned long long pareto_next(struct zipf_state *zs);
+void pareto_init(struct zipf_state *zs, uint64_t nranges, double h, unsigned int seed);
+uint64_t pareto_next(struct zipf_state *zs);
+void zipf_disable_hash(struct zipf_state *zs);
 
 #endif