When recompiling kernel I get the warning message: WARNING: modpost: Found 45 section mismatch(es). To see full details build your kernel with: 'make CONFIG_DEBUG_SECTION_MISMATCH=y' Reproducible: Always Steps to Reproduce: 1.Recompile Kernel Actual Results: WARNING: vmlinux.o(.devinit.text+0x56ba): Section mismatch in reference from the function efifb_probe() to the (unknown reference) .init.data:(unknown) The function __devinit efifb_probe() references a (unknown reference) __initdata (unknown). If (unknown) is only used by efifb_probe then annotate (unknown) with a matching annotation. WARNING: vmlinux.o(.devinit.text+0x56c8): Section mismatch in reference from the function efifb_probe() to the (unknown reference) .init.data:(unknown) The function __devinit efifb_probe() references a (unknown reference) __initdata (unknown). If (unknown) is only used by efifb_probe then annotate (unknown) with a matching annotation. WARNING: vmlinux.o(.devinit.text+0x56cf): Section mismatch in reference from the function efifb_probe() to the variable .init.data:efifb_fix The function __devinit efifb_probe() references a variable __initdata efifb_fix. If efifb_fix is only used by efifb_probe then annotate efifb_fix with a matching annotation. WARNING: vmlinux.o(.devinit.text+0x56d5): Section mismatch in reference from the function efifb_probe() to the variable .init.data:efifb_defined The function __devinit efifb_probe() references a variable __initdata efifb_defined. If efifb_defined is only used by efifb_probe then annotate efifb_defined with a matching annotation. WARNING: vmlinux.o(.devinit.text+0x56e6): Section mismatch in reference from the function efifb_probe() to the variable .init.data:efifb_defined The function __devinit efifb_probe() references a variable __initdata efifb_defined. If efifb_defined is only used by efifb_probe then annotate efifb_defined with a matching annotation. WARNING: vmlinux.o(.devinit.text+0x572c): Section mismatch in reference from the function efifb_probe() to the (unknown reference) .init.data:(unknown) The function __devinit efifb_probe() references a (unknown reference) __initdata (unknown). If (unknown) is only used by efifb_probe then annotate (unknown) with a matching annotation. WARNING: vmlinux.o(.devinit.text+0x5743): Section mismatch in reference from the function efifb_probe() to the variable .init.data:efifb_fix The function __devinit efifb_probe() references a variable __initdata efifb_fix. If efifb_fix is only used by efifb_probe then annotate efifb_fix with a matching annotation. WARNING: vmlinux.o(.devinit.text+0x57a1): Section mismatch in reference from the function efifb_probe() to the variable .init.data:efifb_fix The function __devinit efifb_probe() references a variable __initdata efifb_fix. If efifb_fix is only used by efifb_probe then annotate efifb_fix with a matching annotation. WARNING: vmlinux.o(.devinit.text+0x57b5): Section mismatch in reference from the function efifb_probe() to the (unknown reference) .init.data:(unknown) The function __devinit efifb_probe() references a (unknown reference) __initdata (unknown). If (unknown) is only used by efifb_probe then annotate (unknown) with a matching annotation. WARNING: vmlinux.o(.devinit.text+0x57cd): Section mismatch in reference from the function efifb_probe() to the variable .init.data:efifb_fix The function __devinit efifb_probe() references a variable __initdata efifb_fix. If efifb_fix is only used by efifb_probe then annotate efifb_fix with a matching annotation. WARNING: vmlinux.o(.devinit.text+0x57d3): Section mismatch in reference from the function efifb_probe() to the (unknown reference) .init.data:(unknown) The function __devinit efifb_probe() references a (unknown reference) __initdata (unknown). If (unknown) is only used by efifb_probe then annotate (unknown) with a matching annotation. WARNING: vmlinux.o(.devinit.text+0x57f1): Section mismatch in reference from the function efifb_probe() to the variable .init.data:efifb_fix The function __devinit efifb_probe() references a variable __initdata efifb_fix. If efifb_fix is only used by efifb_probe then annotate efifb_fix with a matching annotation. WARNING: vmlinux.o(.devinit.text+0x5811): Section mismatch in reference from the function efifb_probe() to the variable .init.data:efifb_defined The function __devinit efifb_probe() references a variable __initdata efifb_defined. If efifb_defined is only used by efifb_probe then annotate efifb_defined with a matching annotation. WARNING: vmlinux.o(.devinit.text+0x5825): Section mismatch in reference from the function efifb_probe() to the (unknown reference) .init.data:(unknown) The function __devinit efifb_probe() references a (unknown reference) __initdata (unknown). If (unknown) is only used by efifb_probe then annotate (unknown) with a matching annotation. WARNING: vmlinux.o(.devinit.text+0x5832): Section mismatch in reference from the function efifb_probe() to the (unknown reference) .init.data:(unknown) The function __devinit efifb_probe() references a (unknown reference) __initdata (unknown). If (unknown) is only used by efifb_probe then annotate (unknown) with a matching annotation. WARNING: vmlinux.o(.devinit.text+0x5838): Section mismatch in reference from the function efifb_probe() to the variable .init.data:efifb_defined The function __devinit efifb_probe() references a variable __initdata efifb_defined. If efifb_defined is only used by efifb_probe then annotate efifb_defined with a matching annotation. WARNING: vmlinux.o(.devinit.text+0x5840): Section mismatch in reference from the function efifb_probe() to the variable .init.data:efifb_defined The function __devinit efifb_probe() references a variable __initdata efifb_defined. If efifb_defined is only used by efifb_probe then annotate efifb_defined with a matching annotation. WARNING: vmlinux.o(.devinit.text+0x5852): Section mismatch in reference from the function efifb_probe() to the variable .init.data:efifb_defined The function __devinit efifb_probe() references a variable __initdata efifb_defined. If efifb_defined is only used by efifb_probe then annotate efifb_defined with a matching annotation. WARNING: vmlinux.o(.devinit.text+0x5861): Section mismatch in reference from the function efifb_probe() to the variable .init.data:efifb_defined The function __devinit efifb_probe() references a variable __initdata efifb_defined. If efifb_defined is only used by efifb_probe then annotate efifb_defined with a matching annotation. WARNING: vmlinux.o(.devinit.text+0x5867): Section mismatch in reference from the function efifb_probe() to the (unknown reference) .init.data:(unknown) The function __devinit efifb_probe() references a (unknown reference) __initdata (unknown). If (unknown) is only used by efifb_probe then annotate (unknown) with a matching annotation. WARNING: vmlinux.o(.devinit.text+0x586d): Section mismatch in reference from the function efifb_probe() to the (unknown reference) .init.data:(unknown) The function __devinit efifb_probe() references a (unknown reference) __initdata (unknown). If (unknown) is only used by efifb_probe then annotate (unknown) with a matching annotation. WARNING: vmlinux.o(.devinit.text+0x5873): Section mismatch in reference from the function efifb_probe() to the variable .init.data:efifb_defined The function __devinit efifb_probe() references a variable __initdata efifb_defined. If efifb_defined is only used by efifb_probe then annotate efifb_defined with a matching annotation. WARNING: vmlinux.o(.devinit.text+0x5880): Section mismatch in reference from the function efifb_probe() to the variable .init.data:efifb_defined The function __devinit efifb_probe() references a variable __initdata efifb_defined. If efifb_defined is only used by efifb_probe then annotate efifb_defined with a matching annotation. WARNING: vmlinux.o(.devinit.text+0x58ad): Section mismatch in reference from the function efifb_probe() to the variable .init.data:efifb_defined The function __devinit efifb_probe() references a variable __initdata efifb_defined. If efifb_defined is only used by efifb_probe then annotate efifb_defined with a matching annotation. WARNING: vmlinux.o(.devinit.text+0x58c0): Section mismatch in reference from the function efifb_probe() to the variable .init.data:efifb_defined The function __devinit efifb_probe() references a variable __initdata efifb_defined. If efifb_defined is only used by efifb_probe then annotate efifb_defined with a matching annotation. WARNING: vmlinux.o(.devinit.text+0x58c8): Section mismatch in reference from the function efifb_probe() to the (unknown reference) .init.data:(unknown) The function __devinit efifb_probe() references a (unknown reference) __initdata (unknown). If (unknown) is only used by efifb_probe then annotate (unknown) with a matching annotation. WARNING: vmlinux.o(.devinit.text+0x58ce): Section mismatch in reference from the function efifb_probe() to the (unknown reference) .init.data:(unknown) The function __devinit efifb_probe() references a (unknown reference) __initdata (unknown). If (unknown) is only used by efifb_probe then annotate (unknown) with a matching annotation. WARNING: vmlinux.o(.devinit.text+0x58ea): Section mismatch in reference from the function efifb_probe() to the (unknown reference) .init.data:(unknown) The function __devinit efifb_probe() references a (unknown reference) __initdata (unknown). If (unknown) is only used by efifb_probe then annotate (unknown) with a matching annotation. WARNING: vmlinux.o(.devinit.text+0x58f1): Section mismatch in reference from the function efifb_probe() to the (unknown reference) .init.data:(unknown) The function __devinit efifb_probe() references a (unknown reference) __initdata (unknown). If (unknown) is only used by efifb_probe then annotate (unknown) with a matching annotation. WARNING: vmlinux.o(.devinit.text+0x58f8): Section mismatch in reference from the function efifb_probe() to the (unknown reference) .init.data:(unknown) The function __devinit efifb_probe() references a (unknown reference) __initdata (unknown). If (unknown) is only used by efifb_probe then annotate (unknown) with a matching annotation. WARNING: vmlinux.o(.devinit.text+0x58ff): Section mismatch in reference from the function efifb_probe() to the (unknown reference) .init.data:(unknown) The function __devinit efifb_probe() references a (unknown reference) __initdata (unknown). If (unknown) is only used by efifb_probe then annotate (unknown) with a matching annotation. WARNING: vmlinux.o(.devinit.text+0x5910): Section mismatch in reference from the function efifb_probe() to the variable .init.data:efifb_defined The function __devinit efifb_probe() references a variable __initdata efifb_defined. If efifb_defined is only used by efifb_probe then annotate efifb_defined with a matching annotation. WARNING: vmlinux.o(.devinit.text+0x591d): Section mismatch in reference from the function efifb_probe() to the (unknown reference) .init.data:(unknown) The function __devinit efifb_probe() references a (unknown reference) __initdata (unknown). If (unknown) is only used by efifb_probe then annotate (unknown) with a matching annotation. WARNING: vmlinux.o(.devinit.text+0x5923): Section mismatch in reference from the function efifb_probe() to the (unknown reference) .init.data:(unknown) The function __devinit efifb_probe() references a (unknown reference) __initdata (unknown). If (unknown) is only used by efifb_probe then annotate (unknown) with a matching annotation. WARNING: vmlinux.o(.devinit.text+0x5929): Section mismatch in reference from the function efifb_probe() to the variable .init.data:efifb_defined The function __devinit efifb_probe() references a variable __initdata efifb_defined. If efifb_defined is only used by efifb_probe then annotate efifb_defined with a matching annotation. WARNING: vmlinux.o(.devinit.text+0x5937): Section mismatch in reference from the function efifb_probe() to the (unknown reference) .init.data:(unknown) The function __devinit efifb_probe() references a (unknown reference) __initdata (unknown). If (unknown) is only used by efifb_probe then annotate (unknown) with a matching annotation. WARNING: vmlinux.o(.devinit.text+0x593d): Section mismatch in reference from the function efifb_probe() to the (unknown reference) .init.data:(unknown) The function __devinit efifb_probe() references a (unknown reference) __initdata (unknown). If (unknown) is only used by efifb_probe then annotate (unknown) with a matching annotation. WARNING: vmlinux.o(.devinit.text+0x594a): Section mismatch in reference from the function efifb_probe() to the (unknown reference) .init.data:(unknown) The function __devinit efifb_probe() references a (unknown reference) __initdata (unknown). If (unknown) is only used by efifb_probe then annotate (unknown) with a matching annotation. WARNING: vmlinux.o(.devinit.text+0x595b): Section mismatch in reference from the function efifb_probe() to the (unknown reference) .init.data:(unknown) The function __devinit efifb_probe() references a (unknown reference) __initdata (unknown). If (unknown) is only used by efifb_probe then annotate (unknown) with a matching annotation. WARNING: vmlinux.o(.devinit.text+0x5964): Section mismatch in reference from the function efifb_probe() to the (unknown reference) .init.data:(unknown) The function __devinit efifb_probe() references a (unknown reference) __initdata (unknown). If (unknown) is only used by efifb_probe then annotate (unknown) with a matching annotation. WARNING: vmlinux.o(.devinit.text+0x598d): Section mismatch in reference from the function efifb_probe() to the variable .init.data:efifb_fix The function __devinit efifb_probe() references a variable __initdata efifb_fix. If efifb_fix is only used by efifb_probe then annotate efifb_fix with a matching annotation. WARNING: vmlinux.o(.devinit.text+0x5a21): Section mismatch in reference from the function efifb_probe() to the variable .init.data:efifb_fix The function __devinit efifb_probe() references a variable __initdata efifb_fix. If efifb_fix is only used by efifb_probe then annotate efifb_fix with a matching annotation. Expected Results: No warning or errors. Running gentoo kernel-sources for amd64
*** Bug 323023 has been marked as a duplicate of this bug. ***
Hello Cody, please comment a `emerge --info` plus the package+version of your kernel source. Plus the .config you used to compile. We need this to get a chance to trace this down. Thanks, Michael
Created attachment 234367 [details] Kernel config.gz My .config for the kernel
Created attachment 234369 [details] Emerge --info My emerge --info
(In reply to comment #2) > Hello Cody, > > please comment a `emerge --info` plus the package+version of your kernel > source. Plus the .config you used to compile. We need this to get a chance to > trace this down. > > Thanks, Michael > Attached the config and emerge info, I used the gentoo-sources 2.6.34, for AMD64 following the gentoo handbook.
No new updates, still having the problem. Any news?
(In reply to comment #6) > No new updates, still having the problem. Any news? Sorry for the delay, i forgot to CC myself on the bug.
Did you run make oldconfig before using your .config from the older kernel?
(In reply to comment #7) > (In reply to comment #6) > > No new updates, still having the problem. Any news? > > Sorry for the delay, i forgot to CC myself on the bug. > Its all good, glad to have you back though :) (In reply to comment #8) > Did you run make oldconfig before using your .config from the older kernel? > I actually did, could this be the problem? And if so is there a way to resolve it?
Looks like people are aware of this http://us.generation-nt.com/patch-2-7-fbdev-section-cleanup-efifb-help-196710791.html This patch hasn't made it to Linus tree yet though :/
Released in gentoo-sources-2.6.34-r1
I'm actually running higher then that, but still getting these warning messages. c0de@localhost ~ $ uname -a Linux localhost 2.6.34-gentoo #14 SMP Sun Jun 6 21:29:05 CDT 2010 x86_64 AMD Turion(tm) 64 X2 Mobile Technology TL-56 AuthenticAMD GNU/Linux
I'm seeing the same thing: WARNING: drivers/video/built-in.o(.devinit.text+0x17ee): Section mismatch in reference from the function efifb_probe() to the variable .init.data:efifb_defined The function __devinit efifb_probe() references a variable __initdata efifb_defined. If efifb_defined is only used by efifb_probe then annotate efifb_defined with a matching annotation. after a recent upgrade to 2.6.34-gentoo-r6. emerge --info Portage 2.1.8.3 (default/linux/amd64/10.0, gcc-4.3.4, glibc-2.11.2-r0, 2.6.34-gentoo-r6 x86_64) ================================================================= System uname: Linux-2.6.34-gentoo-r6-x86_64-Intel-R-_Core-TM-_i7_CPU_X_980_@_3.33GHz-with-gentoo-1.12.13 Timestamp of tree: Tue, 28 Sep 2010 01:00:22 +0000 app-shells/bash: 4.0_p37 dev-java/java-config: 2.1.11 dev-lang/python: 2.6.5-r3, 3.1.2-r4 dev-util/cmake: 2.6.4-r3 sys-apps/baselayout: 1.12.13 sys-apps/sandbox: 1.6-r2 sys-devel/autoconf: 2.13, 2.65-r1 sys-devel/automake: 1.8.5-r4, 1.9.6-r3, 1.10.3, 1.11.1 sys-devel/binutils: 2.20.1-r1 sys-devel/gcc: 4.3.4, 4.4.3-r2 sys-devel/gcc-config: 1.4.1 sys-devel/libtool: 2.2.10 sys-devel/make: 3.81-r2 virtual/os-headers: 2.6.30-r1
Section matches are generally harmless and are in many kernel versions and seem to come and go. Please feel free to take these upstream at http://bugzilla.kernel.org.