Allow fio to terminate jobs when steady state is attained
[fio.git] / backend.c
index b43486dc7b2ff016b6d76d281dc479692e90b231..b55a5274f4ad56e698cdea9d154a1ef7935b36d6 100644 (file)
--- a/backend.c
+++ b/backend.c
@@ -1679,6 +1679,7 @@ static void *thread_main(void *data)
        fio_getrusage(&td->ru_start);
        memcpy(&td->bw_sample_time, &td->epoch, sizeof(td->epoch));
        memcpy(&td->iops_sample_time, &td->epoch, sizeof(td->epoch));
+       memcpy(&td->ss.prev_time, &td->epoch, sizeof(td->epoch));
 
        if (o->ratemin[DDIR_READ] || o->ratemin[DDIR_WRITE] ||
                        o->ratemin[DDIR_TRIM]) {
@@ -2410,6 +2411,8 @@ int fio_backend(struct sk_out *sk_out)
        }
 
        for_each_td(td, i) {
+               if (td->ss.dur)
+                       free(td->ss.cache);
                fio_options_free(td);
                if (td->rusage_sem) {
                        fio_mutex_remove(td->rusage_sem);