#include "filehash.h"
#include "os/os.h"
#include "hash.h"
-#include "lib/bitmap.h"
+#include "lib/axmap.h"
#ifdef FIO_HAVE_LINUX_FALLOCATE
#include <linux/falloc.h>
r = fallocate(f->fd, FALLOC_FL_KEEP_SIZE, 0,
f->real_file_size);
- if (r != 0) {
+ if (r != 0)
td_verror(td, errno, "fallocate");
- }
+
break;
#endif /* FIO_HAVE_LINUX_FALLOCATE */
default:
seed = td->rand_seeds[4];
if (td->o.random_distribution == FIO_RAND_DIST_ZIPF)
- zipf_init(&f->zipf, nranges, td->o.zipf_theta, seed);
+ zipf_init(&f->zipf, nranges, td->o.zipf_theta.u.f, seed);
else
- pareto_init(&f->zipf, nranges, td->o.pareto_h, seed);
+ pareto_init(&f->zipf, nranges, td->o.pareto_h.u.f, seed);
return 1;
}
if (init_rand_distribution(td))
return 0;
- if (td->o.norandommap || !td_random(td))
+ if (!td_random(td))
return 0;
for_each_file(td, f, i) {
blocks = (f->real_file_size + td->o.rw_min_bs - 1) /
(unsigned long long) td->o.rw_min_bs;
- f->io_bitmap = bitmap_new(blocks);
- if (f->io_bitmap)
+ if (td->o.random_generator == FIO_RAND_GEN_LFSR) {
+ if (!lfsr_init(&f->lfsr, blocks))
+ continue;
+ } else if (!td->o.norandommap) {
+ f->io_axmap = axmap_new(blocks);
+ if (f->io_axmap)
+ continue;
+ } else if (td->o.norandommap)
continue;
if (!td->o.softrandommap) {
sfree(f->file_name);
f->file_name = NULL;
- bitmap_free(f->io_bitmap);
- f->io_bitmap = NULL;
+ axmap_free(f->io_axmap);
+ f->io_axmap = NULL;
sfree(f);
}