I just investigated assembler warnings coming from arch/mips/kernel/entry.S (checked out as of 12/07 00:00 UTC), and noticed the following. After expanding macros, you get something like: .text .section ".text.init" (from __INIT) .data (from PANIC) .previous (from PANIC) --> section is now .text.init .previous (from __FINIT) --> section is now .data, not .text as intended. Perhaps .pushsection and .popsection should be used in some or all macros like this? Or am I smoking crack? Kip