Hi Nick, Would you consider this a bug:
$ touch drivers/macintosh/via-pmu.c $ CONFIG_LD_DEAD_CODE_DATA_ELIMINATION=n make ARCH=powerpc CROSS_COMPILE=powerpc-linux-gnu- ... LD vmlinux.o MODPOST vmlinux.o WARNING: vmlinux.o(.data+0x216018): Section mismatch in reference from the variable via_pmu_driver to the function .init.text:pmu_init() The variable via_pmu_driver references the function __init pmu_init() If the reference is valid then annotate the variable with __init* or __refdata (see linux/init.h) or name the variable: *_template, *_timer, *_sht, *_ops, *_probe, *_probe_one, *_console While: $ touch drivers/macintosh/via-pmu.c $ CONFIG_LD_DEAD_CODE_DATA_ELIMINATION=y make ARCH=powerpc CROSS_COMPILE=powerpc-linux-gnu- ... AR init/built-in.a AR built-in.a LD vmlinux.o MODPOST vmlinux.o KSYM .tmp_kallsyms1.o KSYM .tmp_kallsyms2.o LD vmlinux SORTEX vmlinux SYSMAP System.map ... Thanks for comment