![Joe Perches](/assets/img/avatar_default.png)
Deduplication of formats and consolidating tests makes the object much smaller. Add bnx2fc_debug.c, add functions for a few logging functions (BNX2FC_IO_DBG, BNX2FC_TGT_DBG, BNX2FC_HBA_DBG). Use printf extension %pV. Add and use pr_fmt and pr_<level>. Move the debug #include below structure definitions. $ size drivers/scsi/bnx2fc/built-in.o* text data bss dec hex filename 101563 1165 24976 127704 1f2d8 drivers/scsi/bnx2fc/built-in.o.new 138473 1109 33400 172982 2a3b6 drivers/scsi/bnx2fc/built-in.o.old Signed-off-by: Joe Perches <joe@perches.com> Signed-off-by: Bhanu Prakash Gollapudi <bprakash@broadcom.com> Signed-off-by: James Bottomley <JBottomley@Parallels.com>
34 lines
994 B
C
34 lines
994 B
C
#ifndef __BNX2FC_DEBUG__
|
|
#define __BNX2FC_DEBUG__
|
|
|
|
/* Log level bit mask */
|
|
#define LOG_IO 0x01 /* scsi cmd error, cleanup */
|
|
#define LOG_TGT 0x02 /* Session setup, cleanup, etc' */
|
|
#define LOG_HBA 0x04 /* lport events, link, mtu, etc' */
|
|
#define LOG_ELS 0x08 /* ELS logs */
|
|
#define LOG_MISC 0x10 /* fcoe L2 frame related logs*/
|
|
#define LOG_ALL 0xff /* LOG all messages */
|
|
|
|
extern unsigned int bnx2fc_debug_level;
|
|
|
|
#define BNX2FC_ELS_DBG(fmt, ...) \
|
|
do { \
|
|
if (unlikely(bnx2fc_debug_level & LOG_ELS)) \
|
|
pr_info(fmt, ##__VA_ARGS__); \
|
|
} while (0)
|
|
|
|
#define BNX2FC_MISC_DBG(fmt, ...) \
|
|
do { \
|
|
if (unlikely(bnx2fc_debug_level & LOG_MISC)) \
|
|
pr_info(fmt, ##__VA_ARGS__); \
|
|
} while (0)
|
|
|
|
__printf(2, 3)
|
|
void BNX2FC_IO_DBG(const struct bnx2fc_cmd *io_req, const char *fmt, ...);
|
|
__printf(2, 3)
|
|
void BNX2FC_TGT_DBG(const struct bnx2fc_rport *tgt, const char *fmt, ...);
|
|
__printf(2, 3)
|
|
void BNX2FC_HBA_DBG(const struct fc_lport *lport, const char *fmt, ...);
|
|
|
|
#endif
|