c99 specifies [#7] If, within a translation unit, the same identifier appears with both internal and external linkage, the behavior is undefined. "early_printk" has this type of behaviour in printk.c. Attached/appended patch removes the dependency on the behaviour of the compiler. thanks, suresh diff -Nru linux-2.5.52/kernel/printk.c~ linux-2.5.52/kernel/printk.c --- linux-2.5.52/kernel/printk.c~ Fri Jan 17 14:53:30 2003 +++ linux-2.5.52/kernel/printk.c Fri Jan 17 14:53:37 2003 @@ -329,7 +329,7 @@ } #ifdef CONFIG_IA64_EARLY_PRINTK if (!console_drivers) { - static void early_printk (const char *str, size_t len); + void early_printk (const char *str, size_t len); early_printk(&LOG_BUF(start), end - start); } #endif