[PATCH 1/5] printk: Add eliminated_printk macro

From: Joe Perches
Date: Sun Jun 17 2012 - 22:26:06 EST


no_printk keeps gcc side-effects.
Add a mechanism to eliminate the side-effects.

Signed-off-by: Joe Perches <joe@xxxxxxxxxxx>
---
include/linux/printk.h | 10 ++++++++++
1 files changed, 10 insertions(+), 0 deletions(-)

diff --git a/include/linux/printk.h b/include/linux/printk.h
index 1bec2f7..84aa910 100644
--- a/include/linux/printk.h
+++ b/include/linux/printk.h
@@ -88,6 +88,16 @@ int no_printk(const char *fmt, ...)
return 0;
}

+/*
+ * Dummy printk for disabled printks maintaining
+ * gcc's format checking and eliminating side-effects
+ */
+#define eliminated_printk(fmt, ...) \
+do { \
+ if (0) \
+ printk(fmt, ##__VA_ARGS__); \
+} while (0)
+
extern asmlinkage __printf(1, 2)
void early_printk(const char *fmt, ...);

--
1.7.8.111.gad25c.dirty

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/