From: Jens Axboe Date: Fri, 8 Feb 2013 18:05:25 +0000 (+0100) Subject: Fix rate limiting X-Git-Tag: fio-2.0.14~19 X-Git-Url: https://git.kernel.dk/?p=fio.git;a=commitdiff_plain;h=315fcfec5f22d6c0d059c4c3b70eaed53237eb5f Fix rate limiting Commit e0224c6b accidentally broke rate limiting, since it bypassed the sleep logic. Rework it slightly to not skip that. Signed-off-by: Jens Axboe --- diff --git a/io_u.c b/io_u.c index 65988819..1013c7fd 100644 --- a/io_u.c +++ b/io_u.c @@ -490,14 +490,14 @@ static enum fio_ddir rate_ddir(struct thread_data *td, enum fio_ddir ddir) assert(ddir_rw(ddir)); - if (td->rate_pending_usleep[ddir] <= 0 || !td->o.rwmix[odir]) + if (td->rate_pending_usleep[ddir] <= 0) return ddir; /* * We have too much pending sleep in this direction. See if we * should switch. */ - if (td_rw(td)) { + if (td_rw(td) && td->o.rwmix[odir]) { /* * Other direction does not have too much pending, switch */