]> err.no Git - linux-2.6/blobdiff - drivers/s390/net/claw.h
Merge branch 'upstream-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jgarzi...
[linux-2.6] / drivers / s390 / net / claw.h
index 7fbd017153eeea4f04c86a4d2a7eeddaba5b4427..1a89d989f34811651d61dccd735fdf53f9701555 100644 (file)
@@ -114,11 +114,20 @@ do { \
        debug_event(claw_dbf_##name,level,(void*)(addr),len); \
 } while (0)
 
+/* Allow to sort out low debug levels early to avoid wasted sprints */
+static inline int claw_dbf_passes(debug_info_t *dbf_grp, int level)
+{
+       return (level <= dbf_grp->level);
+}
+
 #define CLAW_DBF_TEXT_(level,name,text...) \
-do {                                       \
-       sprintf(debug_buffer, text);  \
-               debug_text_event(claw_dbf_##name,level, debug_buffer);\
-} while (0)
+       do { \
+               if (claw_dbf_passes(claw_dbf_##name, level)) { \
+                       sprintf(debug_buffer, text); \
+                       debug_text_event(claw_dbf_##name, level, \
+                                               debug_buffer); \
+               } \
+       } while (0)
 
 /*******************************************************
 *  Define Control Blocks                               *