blktrace: just ignore zero byte traces
[fio.git] / debug.h
diff --git a/debug.h b/debug.h
index a2b6fa67307deb75ccaeb72223871cdfc6e75aac..e5e8040049ac3a25a53aa19e18f2684d3d6a11ae 100644 (file)
--- a/debug.h
+++ b/debug.h
@@ -1,9 +1,7 @@
 #ifndef FIO_DEBUG_H
 #define FIO_DEBUG_H
 
-#include <assert.h>
 #include "lib/types.h"
-#include "log.h"
 
 enum {
        FD_PROCESS      = 0,
@@ -31,11 +29,10 @@ extern unsigned int fio_debug_jobno, *fio_debug_jobp, *fio_warned;
 
 static inline bool fio_did_warn(unsigned int mask)
 {
-       if (!(*fio_warned & mask)) {
-               *fio_warned |= mask;
+       if (*fio_warned & mask)
                return true;
-       }
 
+       *fio_warned |= mask;
        return false;
 }
 
@@ -44,6 +41,8 @@ enum {
        FIO_WARN_VERIFY_BUF     = 2,
        FIO_WARN_ZONED_BUG      = 4,
        FIO_WARN_IOLOG_DROP     = 8,
+       FIO_WARN_FADVISE        = 16,
+       FIO_WARN_BTRACE_ZERO    = 32,
 };
 
 #ifdef FIO_INC_DEBUG
@@ -53,7 +52,7 @@ struct debug_level {
        unsigned long shift;
        unsigned int jobno;
 };
-extern struct debug_level debug_levels[];
+extern const struct debug_level debug_levels[];
 
 extern unsigned long fio_debug;
 
@@ -61,7 +60,7 @@ void __dprint(int type, const char *str, ...) __attribute__((format (printf, 2,
 
 #define dprint(type, str, args...)                     \
        do {                                            \
-               if ((((1 << type)) & fio_debug) == 0)   \
+               if (((1 << type) & fio_debug) == 0)     \
                        break;                          \
                __dprint((type), (str), ##args);        \
        } while (0)                                     \