[coreboot] [v2] r4309 - trunk/coreboot-v2/src/arch/i386/lib

svn at coreboot.org svn at coreboot.org
Tue May 26 16:49:59 CEST 2009


Author: oxygene
Date: 2009-05-26 16:49:59 +0200 (Tue, 26 May 2009)
New Revision: 4309

Modified:
   trunk/coreboot-v2/src/arch/i386/lib/console_printk.c
Log:
Make printk_* behaviour more consistent. Without it, side 
effects in the arguments (eg. a pci config read, or variable increment) 
"vanish" with the message, and the behaviour changes.

Some of these effects might be unwanted, but at least they are consistent now.
To reduce the memory footprint slightly, the formatted strings are discarded. 

Signed-off-by: Patrick Georgi <patrick.georgi at coresystems.de>
Acked-by: Myles Watson <mylesgw at gmail.com>
Acked-by: Stefan Reinauer <stepan at coresystems.de>


Modified: trunk/coreboot-v2/src/arch/i386/lib/console_printk.c
===================================================================
--- trunk/coreboot-v2/src/arch/i386/lib/console_printk.c	2009-05-26 14:37:17 UTC (rev 4308)
+++ trunk/coreboot-v2/src/arch/i386/lib/console_printk.c	2009-05-26 14:49:59 UTC (rev 4309)
@@ -13,39 +13,39 @@
 
 #if MAXIMUM_CONSOLE_LOGLEVEL <= BIOS_EMERG
 #undef  printk_emerg
-#define printk_emerg(fmt, arg...)   do {} while(0)
+#define printk_emerg(fmt, arg...)   do_printk(BIOS_EMERG   , "", ##arg)
 #endif
 #if MAXIMUM_CONSOLE_LOGLEVEL <= BIOS_ALERT
 #undef  printk_alert
-#define printk_alert(fmt, arg...)   do {} while(0)
+#define printk_alert(fmt, arg...)   do_printk(BIOS_EMERG   , "", ##arg)
 #endif
 #if MAXIMUM_CONSOLE_LOGLEVEL <= BIOS_CRIT
 #undef  printk_crit
-#define printk_crit(fmt, arg...)    do {} while(0)
+#define printk_crit(fmt, arg...)    do_printk(BIOS_EMERG   , "", ##arg)
 #endif
 #if MAXIMUM_CONSOLE_LOGLEVEL <= BIOS_ERR
 #undef  printk_err
-#define printk_err(fmt, arg...)     do {} while(0)
+#define printk_err(fmt, arg...)     do_printk(BIOS_EMERG   , "", ##arg)
 #endif
 #if MAXIMUM_CONSOLE_LOGLEVEL <= BIOS_WARNING
 #undef  printk_warning
-#define printk_warning(fmt, arg...) do {} while(0)
+#define printk_warning(fmt, arg...) do_printk(BIOS_EMERG   , "", ##arg)
 #endif
 #if MAXIMUM_CONSOLE_LOGLEVEL <= BIOS_NOTICE
 #undef  printk_notice
-#define printk_notice(fmt, arg...)  do {} while(0)
+#define printk_notice(fmt, arg...)  do_printk(BIOS_EMERG   , "", ##arg)
 #endif
 #if MAXIMUM_CONSOLE_LOGLEVEL <= BIOS_INFO
 #undef  printk_info
-#define printk_info(fmt, arg...)    do {} while(0)
+#define printk_info(fmt, arg...)    do_printk(BIOS_EMERG   , "", ##arg)
 #endif
 #if MAXIMUM_CONSOLE_LOGLEVEL <= BIOS_DEBUG
 #undef  printk_debug
-#define printk_debug(fmt, arg...)   do {} while(0)
+#define printk_debug(fmt, arg...)   do_printk(BIOS_EMERG   , "", ##arg)
 #endif
 #if MAXIMUM_CONSOLE_LOGLEVEL <= BIOS_SPEW
 #undef  printk_spew
-#define printk_spew(fmt, arg...)    do {} while(0)
+#define printk_spew(fmt, arg...)    do_printk(BIOS_EMERG   , "", ##arg)
 #endif
 
 #define print_emerg(STR)   printk_emerg  ("%s", (STR))





More information about the coreboot mailing list