diff options
author | Peter Tiedemann <ptiedem@de.ibm.com> | 2008-02-08 13:09:05 +0100 |
---|---|---|
committer | Jeff Garzik <jeff@garzik.org> | 2008-02-11 11:14:50 -0500 |
commit | f33780d33f8a95fe5dc72b706a4de741e9240f36 (patch) | |
tree | 1a88852ed43bfc6231a6c08ffa13bfc36c23e36e /drivers/s390/net/lcs.h | |
parent | 164b0fb1f2a2990a37b9aeae98a9b771f6add24e (diff) |
claw/lcs/netiucv: check s390dbf level before sprints
additional check of s390dbf level results in better performance
if the default low debugging level is active.
Signed-off-by: Peter Tiedemann <ptiedem@de.ibm.com>
Signed-off-by: Ursula Braun <braunu@de.ibm.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
Diffstat (limited to 'drivers/s390/net/lcs.h')
-rw-r--r-- | drivers/s390/net/lcs.h | 16 |
1 files changed, 12 insertions, 4 deletions
diff --git a/drivers/s390/net/lcs.h b/drivers/s390/net/lcs.h index 8976fb0b070a..d58fea52557d 100644 --- a/drivers/s390/net/lcs.h +++ b/drivers/s390/net/lcs.h @@ -16,11 +16,19 @@ do { \ debug_event(lcs_dbf_##name,level,(void*)(addr),len); \ } while (0) +/* Allow to sort out low debug levels early to avoid wasted sprints */ +static inline int lcs_dbf_passes(debug_info_t *dbf_grp, int level) +{ + return (level <= dbf_grp->level); +} + #define LCS_DBF_TEXT_(level,name,text...) \ -do { \ - sprintf(debug_buffer, text); \ - debug_text_event(lcs_dbf_##name,level, debug_buffer);\ -} while (0) + do { \ + if (lcs_dbf_passes(lcs_dbf_##name, level)) { \ + sprintf(debug_buffer, text); \ + debug_text_event(lcs_dbf_##name, level, debug_buffer); \ + } \ + } while (0) /** * sysfs related stuff |