On Thu, Feb 20 2014, ehrhardt@xxxxxxxxxxxxxxxxxx wrote: > *Resend with hopefully non mangled patches* > References: <20140220131958.965092001@xxxxxxxxxxxxxxxxxx> > Content-Disposition: inline; filename=fix_last_block.diff > > From: Peter Oberparleiter <oberpar@xxxxxxxxxxxxxxxxxx> > > Fix the available range for random offsets which never touched the last block. > > Signed-off-by: Christian Ehrhardt <ehrhardt@xxxxxxxxxxxxxxxxxx> > --- > [diffstat] > io_u.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > --- a/io_u.c > +++ b/io_u.c > @@ -104,7 +104,7 @@ static int __get_next_rand_offset(struct > > dprint(FD_RANDOM, "off rand %llu\n", (unsigned long long) r); > > - *b = (lastb - 1) * (r / ((uint64_t) rmax + 1.0)); > + *b = lastb * (r / ((uint64_t) rmax + 1.0)); > } else { > uint64_t off = 0; Wont this generate lastb as the potentially last block? We want lastb-1 as the last one, otherwise the length of IO from it will be 0. I might be missing something here. -- Jens Axboe -- To unsubscribe from this list: send the line "unsubscribe fio" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html