On Wed, May 30, 2007 at 04:55:30PM +0300, Meelis Roos wrote: > > > WARNING: arch/ppc/platforms/built-in.o - Section mismatch: reference to > > > .init.text:Powerplus_Map_Non0 from .data between 'mot_info' (at offset > > > 0x18) and 'Mesquite_pci_IRQ_map' > > ..... > > > > mot_info is only used by functions marked __init. > > So why not mark it __init so it get discarded and we get rid of all those > > warnings? > > How do I mark a initialized struct __init? Adding __init or const __init in > front of the declaration results in > > CC arch/ppc/platforms/prep_pci.o > arch/ppc/platforms/prep_pci.c:806: error: mot_info causes a section type > conflict
>From include/linux/init.h: * For initialized data: * You should insert __initdata between the variable name and equal * sign followed by value, e.g.: * * static int init_variable __initdata = 0; * static char linux_logo[] __initdata = { 0x32, 0x36, ... }; * * Don't forget to initialize data not at file scope, i.e. within a function, * as gcc otherwise puts the data into the bss section and not into the init * section. * * Also note, that this data cannot be "const". If you need more info we would need to update this comment. Sam - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/