Dear Mr. Frysinger, 2011/5/11 Alessio Igor Bogani <abogani@xxxxxxxxxx>: [...] >>> this breaks symbol prefixed arches (like Blackfin): >>> ÂCC Â Â Âkernel/softirq.o >>> /tmp/ccp3A6LU.s: Assembler messages: >>> /tmp/ccp3A6LU.s:3734: Error: symbol `___ksymtab__local_bh_enable' is >>> already defined [...] >>> name. Âso rather than "__", use "+". > > Sorry I don't think that is a good choice from a long term point of > view. What do you think to add MODULE_SYMBOL_PREFIX to section names > instead? In this way symbol and section names should always be > different also on symbol prefixed archs (which are blackfin and > h8300). I'm thinking to something like this: diff --git a/include/linux/module.h b/include/linux/module.h index 98ddaf0..c4aa266 100644 --- a/include/linux/module.h +++ b/include/linux/module.h @@ -223,7 +223,7 @@ struct module_use { extern void *__crc_##sym __attribute__((weak)); \ static const unsigned long __kcrctab_##sym \ __used \ - __attribute__((section("___kcrctab" sec "__"#sym), unused)) \ + __attribute__((section("___kcrctab" sec "___" MODULE_SYMBOL_PREFIX #sym), unused)) \ = (unsigned long) &__crc_##sym; #else #define __CRC_SYMBOL(sym, sec) @@ -238,7 +238,7 @@ struct module_use { = MODULE_SYMBOL_PREFIX #sym; \ static const struct kernel_symbol __ksymtab_##sym \ __used \ - __attribute__((section("___ksymtab" sec "__"#sym), unused)) \ + __attribute__((section("___ksymtab" sec "___" MODULE_SYMBOL_PREFIX #sym), unused)) \ = { (unsigned long)&sym, __kstrtab_##sym } #define EXPORT_SYMBOL(sym) \ Could you try this, please? Thank you very much! Ciao, Alessio -- To unsubscribe from this list: send the line "unsubscribe linux-embedded" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html