On 6/16/2016 4:45 PM, Martinx - ????? wrote: > On 15 June 2016 at 11:59, Ferruh Yigit <ferruh.yigit at intel.com > <mailto:ferruh.yigit at intel.com>> wrote: > > On 6/15/2016 4:57 PM, Ferruh Yigit wrote: > > Following compile error observed with CentOS 6.8, which uses kernel > > kernel-devel-2.6.32-642.el6.x86_64: > > > > CC eal_thread.o > > .../build/lib/librte_eal/linuxapp/igb_uio/igb_uio.c: > > In function 'igbuio_msix_mask_irq': > > .../build/lib/librte_eal/linuxapp/igb_uio/igb_uio.c:157: > > error: 'PCI_MSIX_ENTRY_CTRL_MASKBIT' undeclared (first use in this > > function) > > > > Reported-by: Thiago <thiagocmartinsc at gmail.com > <mailto:thiagocmartinsc at gmail.com>> > > Signed-off-by: Ferruh Yigit <ferruh.yigit at intel.com > <mailto:ferruh.yigit at intel.com>> > > Hi Thiago, > > Can you please test this patch? > > Thanks, > ferruh > > > Hi Ferruh, > > That patch applied and worked (kind of): > > --- > [root at centos6-1 dpdk-16.04]# patch -p1 < ../dpdk-centos6.patch > patching file lib/librte_eal/linuxapp/igb_uio/compat.h > Hunk #1 succeeded at 24 with fuzz 2. > --- > > It passed that broken step, however, it is failing in a different part > of build process now, as follows: > > --- > [root at centos6-1 ~]# time rpmbuild --ba /root/rpmbuild/SPECS/dpdk.spec > ....... > ....... > LD librte_eal.so.2 > INSTALL-LIB librte_eal.so.2 > == Build lib/librte_eal/linuxapp/kni > LD > > /root/rpmbuild/BUILD/dpdk-16.04/x86_64-default-linuxapp-gcc/build/lib/librte_eal/linuxapp/kni/built-in.o > CC [M] > > /root/rpmbuild/BUILD/dpdk-16.04/x86_64-default-linuxapp-gcc/build/lib/librte_eal/linuxapp/kni/ixgbe_main.o > CC [M] > > /root/rpmbuild/BUILD/dpdk-16.04/x86_64-default-linuxapp-gcc/build/lib/librte_eal/linuxapp/kni/ixgbe_api.o > In file included from > /root/rpmbuild/BUILD/dpdk-16.04/lib/librte_eal/linuxapp/kni/ethtool/ixgbe/ixgbe_osdep.h:41, > from > /root/rpmbuild/BUILD/dpdk-16.04/lib/librte_eal/linuxapp/kni/ethtool/ixgbe/ixgbe_type.h:31, > from > /root/rpmbuild/BUILD/dpdk-16.04/lib/librte_eal/linuxapp/kni/ethtool/ixgbe/ixgbe_api.h:31, > from > /root/rpmbuild/BUILD/dpdk-16.04/x86_64-default-linuxapp-gcc/build/lib/librte_eal/linuxapp/kni/ixgbe_api.c:28: > /root/rpmbuild/BUILD/dpdk-16.04/lib/librte_eal/linuxapp/kni/ethtool/ixgbe/kcompat.h: > In function '__kc_vlan_get_protocol': > /root/rpmbuild/BUILD/dpdk-16.04/lib/librte_eal/linuxapp/kni/ethtool/ixgbe/kcompat.h:2836: > error: implicit declaration of function 'vlan_tx_tag_present'
Because skb_vlan_tag_present renamed in Linux 3.19 (commit: df8a39d) and this commit backported in this kernel. This error can be also fixed, but another compile error pops up. This is hard to keep up, because kernel version is old (2.6.32) but backported latest commits. We are not able to rely on kernel version checks or define checks. If you don't need KNI you can either: 1- Disable it from configuration file 2- Compile kernel modules against newer kernel version using RTE_KERNELDIR, like: "make RTE_KERNELDIR=/tmp/latest_linux_version" As far as I can see you are using spec file to compile, is this spec file distributed with DPDK? If so, perhaps you can share your updates to spec file? > > Might be a totally different problem now, I don't know... :-) > > Best, > Thiago