[dpdk-dev] Build failure on Ubuntu 14.04

Wiles, Roger Keith keith.wiles at windriver.com
Sat Jul 5 17:27:17 CEST 2014


Hi All,

I got a build failure on :

[10:20][keithw at keithw-W2600CR:umf(dev)]$ lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description:    Ubuntu 14.04 LTS
Release:        14.04
Codename:       trusty

Looks like the skb_set_hash() function changed from:

static inline void
skb_set_hash(struct sk_buff *skb, __u32 hash, __always_unused int type)
{
    skb->rxhash = hash;
}

To:

static inline void
skb_set_hash(struct sk_buff *skb, __u32 hash, enum pkt_hash_types type)
{
    skb->l4_rxhash = (type == PKT_HASH_TYPE_L4);
    skb->rxhash = hash;
}

Compile line: 'make install T=x86_64-native-linuxapp-gcc'
...
  CC [M]  /home/keithw/projects/dpdk/dpdk.org/x86_64-native-linuxapp-gcc/build/lib/librte_eal/linuxapp/kni/e1000_82575.o<http://dpdk.org/x86_64-native-linuxapp-gcc/build/lib/librte_eal/linuxapp/kni/e1000_82575.o>
In file included from /home/keithw/projects/dpdk/dpdk.org/lib/librte_eal/linuxapp/kni/ethtool/igb/e1000_osdep.h:41:0<http://dpdk.org/lib/librte_eal/linuxapp/kni/ethtool/igb/e1000_osdep.h:41:0>,
                 from /home/keithw/projects/dpdk/dpdk.org/lib/librte_eal/linuxapp/kni/ethtool/igb/e1000_hw.h:31<http://dpdk.org/lib/librte_eal/linuxapp/kni/ethtool/igb/e1000_hw.h:31>,
                 from /home/keithw/projects/dpdk/dpdk.org/lib/librte_eal/linuxapp/kni/ethtool/igb/e1000_api.h:31<http://dpdk.org/lib/librte_eal/linuxapp/kni/ethtool/igb/e1000_api.h:31>,
                 from /home/keithw/projects/dpdk/dpdk.org/x86_64-native-linuxapp-gcc/build/lib/librte_eal/linuxapp/kni/e1000_82575.c:38:<http://dpdk.org/x86_64-native-linuxapp-gcc/build/lib/librte_eal/linuxapp/kni/e1000_82575.c:38:>
/home/keithw/projects/dpdk/dpdk.org/lib/librte_eal/linuxapp/kni/ethtool/igb/kcompat.h:3853:1:<http://dpdk.org/lib/librte_eal/linuxapp/kni/ethtool/igb/kcompat.h:3853:1:> error: conflicting types for ‘skb_set_hash’
 skb_set_hash(struct sk_buff *skb, __u32 hash, __always_unused int type)
 ^
In file included from /usr/src/linux-headers-3.13.0-30-generic/include/linux/if_ether.h:23:0,
                 from /home/keithw/projects/dpdk/dpdk.org/lib/librte_eal/linuxapp/kni/ethtool/igb/e1000_osdep.h:39<http://dpdk.org/lib/librte_eal/linuxapp/kni/ethtool/igb/e1000_osdep.h:39>,
                 from /home/keithw/projects/dpdk/dpdk.org/lib/librte_eal/linuxapp/kni/ethtool/igb/e1000_hw.h:31<http://dpdk.org/lib/librte_eal/linuxapp/kni/ethtool/igb/e1000_hw.h:31>,
                 from /home/keithw/projects/dpdk/dpdk.org/lib/librte_eal/linuxapp/kni/ethtool/igb/e1000_api.h:31<http://dpdk.org/lib/librte_eal/linuxapp/kni/ethtool/igb/e1000_api.h:31>,
                 from /home/keithw/projects/dpdk/dpdk.org/x86_64-native-linuxapp-gcc/build/lib/librte_eal/linuxapp/kni/e1000_82575.c:38:<http://dpdk.org/x86_64-native-linuxapp-gcc/build/lib/librte_eal/linuxapp/kni/e1000_82575.c:38:>
/usr/src/linux-headers-3.13.0-30-generic/include/linux/skbuff.h:740:1: note: previous definition of ‘skb_set_hash’ was here
 skb_set_hash(struct sk_buff *skb, __u32 hash, enum pkt_hash_types type)
 ^
make[10]: *** [/home/keithw/projects/dpdk/dpdk.org/x86_64-native-linuxapp-gcc/build/lib/librte_eal/linuxapp/kni/e1000_82575.o]<http://dpdk.org/x86_64-native-linuxapp-gcc/build/lib/librte_eal/linuxapp/kni/e1000_82575.o]> Error 1
make[9]: *** [_module_/home/keithw/projects/dpdk/dpdk.org/x86_64-native-linuxapp-gcc/build/lib/librte_eal/linuxapp/kni]<http://dpdk.org/x86_64-native-linuxapp-gcc/build/lib/librte_eal/linuxapp/kni]> Error 2
make[8]: *** [sub-make] Error 2
make[7]: *** [rte_kni.ko] Error 2
make[6]: *** [kni] Error 2
make[5]: *** [linuxapp] Error 2
make[4]: *** [librte_eal] Error 2
make[3]: *** [lib] Error 2
make[2]: *** [all] Error 2
make[1]: *** [x86_64-native-linuxapp-gcc_install] Error 2
make: *** [install] Error 2

Please verify this is correct.

Thanks
++Keith

Keith Wiles, Principal Technologist with CTO office, Wind River
mobile 972-213-5533

[Powering 30 Years of Innovation]<http://www.windriver.com/announces/wr30/>



More information about the dev mailing list