[dpdk-dev] kni: fix compile issue on Ubuntu 12.04 with kernel 3.13.0-30

Message ID 1448384381-203269-1-git-send-email-pablo.de.lara.guarch@intel.com (mailing list archive)
State Accepted, archived
Headers

Commit Message

De Lara Guarch, Pablo Nov. 24, 2015, 4:59 p.m. UTC
  Fixes following error when Ubuntu 12.04 uses kernel 3.13.0-30-generic,
since skb_set_hash() is implemented in the kernel from 3.13.0-30,
which is declared as UBUNTU_KERNEL_VERSION(3,13,0,30,0) and not
UBUNTU_KERNEL_VERSION(3,13,0,30,54)

In file included
from /usr/src/linux-headers-3.13.0-30-generic/include/linux/if_ether.h:23:0,
from /tmp/dpdk/lib/librte_eal/linuxapp/kni/ethtool/igb/e1000_osdep.h:39,
from /tmp/dpdk/lib/librte_eal/linuxapp/kni/ethtool/igb/e1000_hw.h:31,
from /tmp/dpdk/lib/librte_eal/linuxapp/kni/ethtool/igb/e1000_api.h:31,
from /tmp/dpdk/lib/librte_eal/linuxapp/kni/ethtool/igb/e1000_mbx.h:31,
from /tmp/dpdk/x86_64-native-linuxapp-gcc/build/lib/librte_eal/linuxapp/kni/e1000_mbx.c:28:
/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)
 ^

Fixes: e88c3b0a ("kni: fix build on Ubuntu 12.04.5")

Signed-off-by: Pablo de Lara <pablo.de.lara.guarch@intel.com>
---
 lib/librte_eal/linuxapp/kni/ethtool/igb/kcompat.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
  

Comments

Thomas Monjalon Nov. 24, 2015, 8:36 p.m. UTC | #1
2015-11-24 16:59, Pablo de Lara:
> Fixes following error when Ubuntu 12.04 uses kernel 3.13.0-30-generic,
> since skb_set_hash() is implemented in the kernel from 3.13.0-30,
> which is declared as UBUNTU_KERNEL_VERSION(3,13,0,30,0) and not
> UBUNTU_KERNEL_VERSION(3,13,0,30,54)
> 
> In file included
> from /usr/src/linux-headers-3.13.0-30-generic/include/linux/if_ether.h:23:0,
> from /tmp/dpdk/lib/librte_eal/linuxapp/kni/ethtool/igb/e1000_osdep.h:39,
> from /tmp/dpdk/lib/librte_eal/linuxapp/kni/ethtool/igb/e1000_hw.h:31,
> from /tmp/dpdk/lib/librte_eal/linuxapp/kni/ethtool/igb/e1000_api.h:31,
> from /tmp/dpdk/lib/librte_eal/linuxapp/kni/ethtool/igb/e1000_mbx.h:31,
> from /tmp/dpdk/x86_64-native-linuxapp-gcc/build/lib/librte_eal/linuxapp/kni/e1000_mbx.c:28:
> /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)
>  ^
> 
> Fixes: e88c3b0a ("kni: fix build on Ubuntu 12.04.5")
> 
> Signed-off-by: Pablo de Lara <pablo.de.lara.guarch@intel.com>

Applied, thanks
  

Patch

diff --git a/lib/librte_eal/linuxapp/kni/ethtool/igb/kcompat.h b/lib/librte_eal/linuxapp/kni/ethtool/igb/kcompat.h
index 5f45b8b..68a3b9f 100644
--- a/lib/librte_eal/linuxapp/kni/ethtool/igb/kcompat.h
+++ b/lib/librte_eal/linuxapp/kni/ethtool/igb/kcompat.h
@@ -3864,7 +3864,7 @@  static inline struct sk_buff *__kc__vlan_hwaccel_put_tag(struct sk_buff *skb,
 
 #if ( LINUX_VERSION_CODE < KERNEL_VERSION(3,14,0) )
 #if (!(RHEL_RELEASE_CODE && RHEL_RELEASE_CODE >= RHEL_RELEASE_VERSION(6,6)))
-#if (!(UBUNTU_KERNEL_CODE >= UBUNTU_KERNEL_VERSION(3,13,0,30,54) \
+#if (!(UBUNTU_KERNEL_CODE >= UBUNTU_KERNEL_VERSION(3,13,0,30,0) \
     && (UBUNTU_RELEASE_CODE == UBUNTU_RELEASE_VERSION(12,4) \
      || UBUNTU_RELEASE_CODE == UBUNTU_RELEASE_VERSION(14,4))))
 #if (!(SLE_VERSION_CODE == SLE_VERSION(12,0,0)))