X-Git-Url: https://git.kernel.dk/?p=fio.git;a=blobdiff_plain;f=io_u.c;h=6df4b5eee80190187aa0015b11aca7da73e714b4;hp=978771e1370378ada310bc303b686f20fd7a2763;hb=7c83c089a9b8bd742f788157ac47a5af363adb19;hpb=bdb4e2e99d4a87e5d3677cc09aa1ce92135125a9 diff --git a/io_u.c b/io_u.c index 978771e1..6df4b5ee 100644 --- a/io_u.c +++ b/io_u.c @@ -329,11 +329,12 @@ static void io_u_mark_latency(struct thread_data *td, unsigned long msec) */ static struct fio_file *get_next_file_rand(struct thread_data *td) { - long r = os_random_long(&td->next_file_state); unsigned int fileno; struct fio_file *f; do { + long r = os_random_long(&td->next_file_state); + fileno = (unsigned int) ((double) (td->nr_files - 1) * r / (RAND_MAX + 1.0)); f = &td->files[fileno]; if (f->fd != -1)