[dpdk-dev] section mismatch warnings

Sergio Gonzalez Monroy sergio.gonzalez.monroy at intel.com
Tue Oct 7 16:31:25 CEST 2014


On Mon, Oct 06, 2014 at 06:42:04PM +0000, Michael Hu (NSBU) wrote:
> Hi Everyone,
> 
> When we enable kernel config CONFIG_DEBUG_SECTION_MISMATCH=y and compile DPDK 1.7 with 3.14.17 kernel + gcc 4.8.2, we got lots of warnings like these.
> Do we have plan to fix them? If so, please advise on which version. Thanks.
> 
> 
> 
> == Build lib/librte_eal/linuxapp/kni
> cut: /proc/version_signature: No such file or directory
>   LD      /git/Pktgen-DPDK/dpdk/build/build/lib/librte_eal/linuxapp/igb_uio/built-in.o
>   CC [M]  /git/Pktgen-DPDK/dpdk/build/build/lib/librte_eal/linuxapp/igb_uio/igb_uio.o
>   Building modules, stage 2.
>   MODPOST 1 modules
> WARNING: /git/Pktgen-DPDK/dpdk/build/build/lib/librte_eal/linuxapp/igb_uio/igb_uio.o(.data+0x20): Section mismatch in reference from the variable igbuio_pci_driver to the function .text:igbuio_pci_probe()
> 
> WARNING: /git/Pktgen-DPDK/dpdk/build/build/lib/librte_eal/linuxapp/igb_uio/igb_uio.o(.data+0x28): Section mismatch in reference from the variable igbuio_pci_driver to the function .text:igbuio_pci_remove()
> 
> WARNING: /git/Pktgen-DPDK/dpdk/build/build/lib/librte_eal/linuxapp/igb_uio/igb_uio.o(.data+0x130): Section mismatch in reference from the variable dev_attr_max_vfs to the function .text:show_max_vfs()
> 
> WARNING: /git/Pktgen-DPDK/dpdk/build/build/lib/librte_eal/linuxapp/igb_uio/igb_uio.o(.data+0x138): Section mismatch in reference from the variable dev_attr_max_vfs to the function .text:store_max_vfs()
> 
>   CC      /git/Pktgen-DPDK/dpdk/build/build/lib/librte_eal/linuxapp/igb_uio/igb_uio.mod.o
>   LD [M]  /git/Pktgen-DPDK/dpdk/build/build/lib/librte_eal/linuxapp/igb_uio/igb_uio.ko
> INSTALL-MODULE igb_uio.ko
> 
>   LD      /git/Pktgen-DPDK/dpdk/build/build/lib/librte_eal/linuxapp/kni/built-in.o
>   CC [M]  /git/Pktgen-DPDK/dpdk/build/build/lib/librte_eal/linuxapp/kni/ixgbe_main.o
>   CC [M]  /git/Pktgen-DPDK/dpdk/build/build/lib/librte_eal/linuxapp/kni/ixgbe_api.o
>   CC [M]  /git/Pktgen-DPDK/dpdk/build/build/lib/librte_eal/linuxapp/kni/ixgbe_common.o
>   CC [M]  /git/Pktgen-DPDK/dpdk/build/build/lib/librte_eal/linuxapp/kni/ixgbe_ethtool.o
>   CC [M]  /git/Pktgen-DPDK/dpdk/build/build/lib/librte_eal/linuxapp/kni/ixgbe_82599.o
>   CC [M]  /git/Pktgen-DPDK/dpdk/build/build/lib/librte_eal/linuxapp/kni/ixgbe_82598.o
>   CC [M]  /git/Pktgen-DPDK/dpdk/build/build/lib/librte_eal/linuxapp/kni/ixgbe_x540.o
>   CC [M]  /git/Pktgen-DPDK/dpdk/build/build/lib/librte_eal/linuxapp/kni/ixgbe_phy.o
>   CC [M]  /git/Pktgen-DPDK/dpdk/build/build/lib/librte_eal/linuxapp/kni/kcompat.o
>   CC [M]  /git/Pktgen-DPDK/dpdk/build/build/lib/librte_eal/linuxapp/kni/e1000_82575.o
>   CC [M]  /git/Pktgen-DPDK/dpdk/build/build/lib/librte_eal/linuxapp/kni/e1000_i210.o
>   CC [M]  /git/Pktgen-DPDK/dpdk/build/build/lib/librte_eal/linuxapp/kni/e1000_api.o
>   CC [M]  /git/Pktgen-DPDK/dpdk/build/build/lib/librte_eal/linuxapp/kni/e1000_mac.o
>   CC [M]  /git/Pktgen-DPDK/dpdk/build/build/lib/librte_eal/linuxapp/kni/e1000_manage.o
>   CC [M]  /git/Pktgen-DPDK/dpdk/build/build/lib/librte_eal/linuxapp/kni/e1000_mbx.o
>   CC [M]  /git/Pktgen-DPDK/dpdk/build/build/lib/librte_eal/linuxapp/kni/e1000_nvm.o
>   CC [M]  /git/Pktgen-DPDK/dpdk/build/build/lib/librte_eal/linuxapp/kni/e1000_phy.o
>   CC [M]  /git/Pktgen-DPDK/dpdk/build/build/lib/librte_eal/linuxapp/kni/igb_ethtool.o
>   CC [M]  /git/Pktgen-DPDK/dpdk/build/build/lib/librte_eal/linuxapp/kni/igb_hwmon.o
>   CC [M]  /git/Pktgen-DPDK/dpdk/build/build/lib/librte_eal/linuxapp/kni/igb_main.o
>   CC [M]  /git/Pktgen-DPDK/dpdk/build/build/lib/librte_eal/linuxapp/kni/igb_debugfs.o
>   CC [M]  /git/Pktgen-DPDK/dpdk/build/build/lib/librte_eal/linuxapp/kni/igb_param.o
>   CC [M]  /git/Pktgen-DPDK/dpdk/build/build/lib/librte_eal/linuxapp/kni/igb_procfs.o
>   CC [M]  /git/Pktgen-DPDK/dpdk/build/build/lib/librte_eal/linuxapp/kni/igb_vmdq.o
>   CC [M]  /git/Pktgen-DPDK/dpdk/build/build/lib/librte_eal/linuxapp/kni/kni_misc.o
>   CC [M]  /git/Pktgen-DPDK/dpdk/build/build/lib/librte_eal/linuxapp/kni/kni_net.o
>   CC [M]  /git/Pktgen-DPDK/dpdk/build/build/lib/librte_eal/linuxapp/kni/kni_ethtool.o
>   LD [M]  /git/Pktgen-DPDK/dpdk/build/build/lib/librte_eal/linuxapp/kni/rte_kni.o
> WARNING: /git/Pktgen-DPDK/dpdk/build/build/lib/librte_eal/linuxapp/kni/rte_kni.o(.data+0x20): Section mismatch in reference from the variable ixgbe_ethtool_ops to the function .text:ixgbe_get_settings()
> 
> WARNING: /git/Pktgen-DPDK/dpdk/build/build/lib/librte_eal/linuxapp/kni/rte_kni.o(.data+0x28): Section mismatch in reference from the variable ixgbe_ethtool_ops to the function .text:ixgbe_set_settings()
> 
> WARNING: /git/Pktgen-DPDK/dpdk/build/build/lib/librte_eal/linuxapp/kni/rte_kni.o(.data+0x30): Section mismatch in reference from the variable ixgbe_ethtool_ops to the function .text:ixgbe_get_drvinfo()
> 
> WARNING: /git/Pktgen-DPDK/dpdk/build/build/lib/librte_eal/linuxapp/kni/rte_kni.o(.data+0x38): Section mismatch in reference from the variable ixgbe_ethtool_ops to the function .text:ixgbe_get_regs_len()
> 
> WARNING: /git/Pktgen-DPDK/dpdk/build/build/lib/librte_eal/linuxapp/kni/rte_kni.o(.data+0x40): Section mismatch in reference from the variable ixgbe_ethtool_ops to the function .text:ixgbe_get_regs()
> 
> Thanks,
> Michael
> 
> 

Hi Michael,

I have been trying to reproduce those warnings without success (kernel 3.14.17,
DPDK 1.7.0 and gcc 4.8.3).

Regardless, if my understanding of section mismatches is correct, they should be no
warnings when referencing to functions in .text section, as it is not a discardable
section.

Have you tried to reproduce those warnings with different setup?

Thanks,
Sergio


More information about the dev mailing list