[PATCH] EDAC: printk cleanup
This implements the following idea: On Monday 30 January 2006 19:22, Eric W. Biederman wrote: > One piece missing from this conversation is the issue that we need errors > in a uniform format. That is why edac_mc has helper functions. > > However there will always be errors that don't fit any particular model. > Could we add a edac_printk(dev, ); That is similar to dev_printk but > prints out an EDAC header and the device on which the error was found? > Letting the rest of the string be user specified. > > For actual control that interface may be to blunt, but at least for people > looking in the logs it allows all of the errors to be detected and > harvested. Signed-off-by: David S. Peterson <dsp@llnl.gov> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
此提交包含在:
@@ -43,10 +43,29 @@
|
||||
#define PAGES_TO_MiB( pages ) ( ( pages ) << ( PAGE_SHIFT - 20 ) )
|
||||
#endif
|
||||
|
||||
#define edac_printk(level, prefix, fmt, arg...) \
|
||||
printk(level "EDAC " prefix ": " fmt, ##arg)
|
||||
|
||||
#define edac_mc_printk(mci, level, fmt, arg...) \
|
||||
printk(level "EDAC MC%d: " fmt, mci->mc_idx, ##arg)
|
||||
|
||||
#define edac_mc_chipset_printk(mci, level, prefix, fmt, arg...) \
|
||||
printk(level "EDAC " prefix " MC%d: " fmt, mci->mc_idx, ##arg)
|
||||
|
||||
/* prefixes for edac_printk() and edac_mc_printk() */
|
||||
#define EDAC_MC "MC"
|
||||
#define EDAC_PCI "PCI"
|
||||
#define EDAC_DEBUG "DEBUG"
|
||||
|
||||
#ifdef CONFIG_EDAC_DEBUG
|
||||
extern int edac_debug_level;
|
||||
#define edac_debug_printk(level, fmt, args...) \
|
||||
do { if (level <= edac_debug_level) printk(KERN_DEBUG fmt, ##args); } while(0)
|
||||
|
||||
#define edac_debug_printk(level, fmt, arg...) \
|
||||
do { \
|
||||
if (level <= edac_debug_level) \
|
||||
edac_printk(KERN_DEBUG, EDAC_DEBUG, fmt, ##arg); \
|
||||
} while(0)
|
||||
|
||||
#define debugf0( ... ) edac_debug_printk(0, __VA_ARGS__ )
|
||||
#define debugf1( ... ) edac_debug_printk(1, __VA_ARGS__ )
|
||||
#define debugf2( ... ) edac_debug_printk(2, __VA_ARGS__ )
|
||||
|
新增問題並參考
封鎖使用者