Latest working kernel version: N/A Distribution: Gentoo Hardware Environment: Toshiba Satellite L300-214 Software Environment: gcc version 4.3.4 (Gentoo 4.3.4 p1.1, pie-10.1.5) Binutils 2.18-r3 Grub (GNU GRUB 0.97) Architecture: x86_64 Description: During the build of kernel 2.6.33.2, I receive a section mismatch warning. After re-compiling with CONFIG_DEBUG_SECTION_MISMATCH=y, I get those 3 warnings: CC drivers/pci/pci-acpi.o LD drivers/pci/built-in.o WARNING: drivers/pci/built-in.o(.text+0xf50d): Section mismatch in reference from the function dmar_ir_support() to the variable .init.data:dmar_tbl The function dmar_ir_support() references the variable __initdata dmar_tbl. This is often because dmar_ir_support lacks a __initdata annotation or the annotation of dmar_tbl is wrong. LD drivers/usb/storage/usb-storage.o LD drivers/usb/storage/built-in.o LD drivers/usb/built-in.o LD drivers/built-in.o WARNING: drivers/built-in.o(.text+0xf50d): Section mismatch in reference from the function dmar_ir_support() to the variable .init.data:dmar_tbl The function dmar_ir_support() references the variable __initdata dmar_tbl. This is often because dmar_ir_support lacks a __initdata annotation or the annotation of dmar_tbl is wrong. LD vmlinux.o MODPOST vmlinux.o WARNING: vmlinux.o(.text+0x28e8d5): Section mismatch in reference from the function dmar_ir_support() to the variable .init.data:dmar_tbl The function dmar_ir_support() references the variable __initdata dmar_tbl. This is often because dmar_ir_support lacks a __initdata annotation or the annotation of dmar_tbl is wrong. GEN .version I did some googling and looks like there is a solution/workaround by modifying dmar.c and intel-iommu.h as the attached url describes.
This url: https://patchwork.kernel.org/patch/88561/
right, this seems to be the right solution. Close this bug as the patch is already available. CC Jesse.
commit 0b8973a81876d90f916507ac40d1381068dc986a Author: Luck, Tony <tony.luck@intel.com> Date: Wed Dec 16 22:59:29 2009 +0000 intel-iommu: Fix section mismatch dmar_ir_support() uses dmar_tbl. shipped in v2.6.32-7810-g0b8973a