profile_add_hooks(td);
td->thread_number = thread_number;
+
+ if (!parent || !parent->o.group_reporting)
+ stat_number++;
+
return td;
}
o->min_bs[DDIR_READ] == o->min_bs[DDIR_TRIM];
}
-static void init_rand_distribution(struct thread_data *td)
-{
- unsigned int range_size;
- unsigned long nranges;
-
- if (td->o.random_distribution == FIO_RAND_DIST_RANDOM)
- return;
-
- range_size = min(td->o.min_bs[DDIR_READ], td->o.min_bs[DDIR_WRITE]);
-
- nranges = (td->o.size + range_size - 1) / range_size;
-
- if (td->o.random_distribution == FIO_RAND_DIST_ZIPF)
- zipf_init(&td->zipf, nranges, td->o.zipf_theta);
- else
- pareto_init(&td->zipf, nranges, td->o.pareto_h);
-}
-
/*
* Lazy way of fixing up options that depend on each other. We could also
* define option callback handlers, but this is easier.
td->o.compress_percentage = 0;
}
- init_rand_distribution(td);
-
return ret;
}