Coexistence of EXPORT_SYMBOL() and __cpuinit

From: Peter Teoh
Date: Sun Feb 03 2008 - 20:49:41 EST


In kernel/cpu.c, there exists API that is declared as __cpuinit, and
at the same time exported via EXPORT_SYMBOL().

Can these two attribute coexists at the same time? I mean, when it
is declared with EXPORT_SYMBOL, according to include/linux/module.h,
it is placed in a __ksymtab section, and when compiled with with
__cpuinit, according to include/linux/init.h, into a __cpuinit
section.

Can gcc compiled ELF support this feature?

Anyway, logical speaking, if it is EXPORT_SYMBOL, it is meant to be
long-lasting, and not short-live as __cpuinit is meant to be, right?

Please comment, thanks.

If ok, I will modify the cpu.c to remove all the __cpuinit whenever
EXPORT_SYMBOL is encountered for it (or any __init in general :-)).
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/