[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH 2/3] nbd: Avoid bitrot in TRACE() usage
From: |
Eric Blake |
Subject: |
[Qemu-devel] [PATCH 2/3] nbd: Avoid bitrot in TRACE() usage |
Date: |
Tue, 5 Apr 2016 21:35:03 -0600 |
The compiler is smart enough to optimize out 'if (0)', but won't
type-check our printfs if they are hidden behind #if.
Signed-off-by: Eric Blake <address@hidden>
---
nbd/nbd-internal.h | 15 +++++++++------
1 file changed, 9 insertions(+), 6 deletions(-)
diff --git a/nbd/nbd-internal.h b/nbd/nbd-internal.h
index 127c48d..f4dce06 100644
--- a/nbd/nbd-internal.h
+++ b/nbd/nbd-internal.h
@@ -33,18 +33,21 @@
#define DEBUG_NBD
#ifdef DEBUG_NBD
-#define TRACE(msg, ...) do { \
- LOG(msg, ## __VA_ARGS__); \
-} while(0)
+#define DEBUG_NBD_PRINT 1
#else
-#define TRACE(msg, ...) \
- do { } while (0)
+#define DEBUG_NBD_PRINT 0
#endif
+#define TRACE(msg, ...) do { \
+ if (DEBUG_NBD_PRINT) { \
+ LOG(msg, ## __VA_ARGS__); \
+ } \
+} while (0)
+
#define LOG(msg, ...) do { \
fprintf(stderr, "%s:%s():L%d: " msg "\n", \
__FILE__, __FUNCTION__, __LINE__, ## __VA_ARGS__); \
-} while(0)
+} while (0)
/* This is all part of the "official" NBD API.
*
--
2.5.5