engines/io_uring_cmd: make trims async
[fio.git] / libfio.c
index a52014ce6bd3afebcf8e5bc4adecea1fcc0794cd..5e3fd30b718ecc57c3b9e6d5e45202d635a26e0f 100644 (file)
--- a/libfio.c
+++ b/libfio.c
@@ -74,6 +74,7 @@ static const char *fio_arch_strings[arch_nr] = {
        "hppa",
        "mips",
        "aarch64",
+       "loongarch64",
        "generic"
 };
 
@@ -131,10 +132,14 @@ void clear_io_state(struct thread_data *td, int all)
 
 void reset_all_stats(struct thread_data *td)
 {
+       unsigned long long b;
        int i;
 
        reset_io_counters(td, 1);
 
+       b = ddir_rw_sum(td->thinktime_blocks_counter);
+       td->last_thinktime_blocks -= b;
+
        for (i = 0; i < DDIR_RWDIR_CNT; i++) {
                td->io_bytes[i] = 0;
                td->io_blocks[i] = 0;
@@ -149,6 +154,8 @@ void reset_all_stats(struct thread_data *td)
        memcpy(&td->bw_sample_time, &td->epoch, sizeof(td->epoch));
        memcpy(&td->ss.prev_time, &td->epoch, sizeof(td->epoch));
 
+       td->last_thinktime = td->epoch;
+
        lat_target_reset(td);
        clear_rusage_stat(td);
        helper_reset();