t/zbd: avoid test case 31 failure with small devices
[fio.git] / blktrace.c
index 619121c704a90f198585293d976dffbe1984ca30..ef9ce6bffd8686e1e5f5e7bf4f00828490495c2c 100644 (file)
@@ -5,6 +5,7 @@
 #include <stdlib.h>
 #include <unistd.h>
 #include <errno.h>
+#include <sys/sysmacros.h>
 
 #include "flist.h"
 #include "fio.h"
@@ -442,7 +443,10 @@ err:
 bool read_blktrace(struct thread_data* td)
 {
        struct blk_io_trace t;
-       struct file_cache cache = { };
+       struct file_cache cache = {
+               .maj = ~0U,
+               .min = ~0U,
+       };
        unsigned long ios[DDIR_RWDIR_SYNC_CNT] = { };
        unsigned long long rw_bs[DDIR_RWDIR_CNT] = { };
        unsigned long skipped_writes;
@@ -542,7 +546,8 @@ bool read_blktrace(struct thread_data* td)
                        td->o.max_bs[DDIR_TRIM] = max(td->o.max_bs[DDIR_TRIM], rw_bs[DDIR_TRIM]);
                        io_u_quiesce(td);
                        free_io_mem(td);
-                       init_io_u_buffers(td);
+                       if (init_io_u_buffers(td))
+                               return false;
                }
                return true;
        }