arcnet: Neaten BUGMSG macro defines
authorJoe Perches <joe@perches.com>
Tue, 5 May 2015 17:05:53 +0000 (10:05 -0700)
committerMichael Grzeschik <m.grzeschik@pengutronix.de>
Wed, 23 Sep 2015 06:44:23 +0000 (08:44 +0200)
These macros are actually printk and pr_cont uses with a flag.

Add a new BUGLVL_TEST macro which is just the "should use" test
and not an odd "if (<foo>)" macro to simplify uses in a new patch.

Signed-off-by: Joe Perches <joe@perches.com>
Signed-off-by: Michael Grzeschik <m.grzeschik@pengutronix.de>
include/linux/arcdevice.h

index 7868788..ad61020 100644 (file)
 #endif
 extern int arcnet_debug;
 
+#define BUGLVL_TEST(x) ((x) & ARCNET_DEBUG_MAX & arcnet_debug)
+#define BUGLVL(x)      if (BUGLVL_TEST(x))
+
 /* macros to simplify debug checking */
-#define BUGLVL(x) if ((ARCNET_DEBUG_MAX) & arcnet_debug & (x))
-#define BUGMSG2(x, msg, args...) do { BUGLVL(x) printk(msg, ## args); } while (0)
-#define BUGMSG(x, msg, args...)                                                \
-       BUGMSG2(x, "%s%6s: " msg,                                       \
-               x == D_NORMAL   ? KERN_WARNING                          \
-               : x < D_DURING ? KERN_INFO : KERN_DEBUG,                \
-               dev->name, ## args)
+#define BUGMSG(x, fmt, ...)                                            \
+do {                                                                   \
+       if (BUGLVL_TEST(x))                                             \
+               printk("%s%6s: " fmt,                                   \
+                      (x) == D_NORMAL  ? KERN_WARNING :                \
+                      (x) < D_DURING ? KERN_INFO : KERN_DEBUG,         \
+                      dev->name, ##__VA_ARGS__);                       \
+} while (0)
+
+#define BUGMSG2(x, fmt, ...)                                           \
+do {                                                                   \
+       if (BUGLVL_TEST(x))                                             \
+               printk(fmt, ##__VA_ARGS__);                             \
+} while (0)
 
 /* see how long a function call takes to run, expressed in CPU cycles */
 #define TIME(name, bytes, call) BUGLVL(D_TIMING) {                     \