From: Lee Roberts Date: Mon, 7 Dec 2015 14:59:59 +0000 (-0700) Subject: kni: fix build on RHEL 7.2 X-Git-Tag: spdx-start~7814 X-Git-Url: http://git.droids-corp.org/?a=commitdiff_plain;h=261f0390841d1531d1d0fe88e2375e254cb63716;p=dpdk.git kni: fix build on RHEL 7.2 RHEL 7.2 contains additional backports from newer upstream kernels. Add RHEL_RELEASE_CODE logic for RHEL_RELEASE_VERSION(7,2) to pick up the changes to kernel functions. Signed-off-by: Lee Roberts --- diff --git a/lib/librte_eal/linuxapp/kni/ethtool/igb/igb_main.c b/lib/librte_eal/linuxapp/kni/ethtool/igb/igb_main.c index b330b200c5..9d4fa59cfd 100644 --- a/lib/librte_eal/linuxapp/kni/ethtool/igb/igb_main.c +++ b/lib/librte_eal/linuxapp/kni/ethtool/igb/igb_main.c @@ -2274,7 +2274,7 @@ static int igb_ndo_bridge_getlink(struct sk_buff *skb, u32 pid, u32 seq, else mode = BRIDGE_MODE_VEPA; -#ifdef HAVE_NDO_FDB_ADD_VID +#ifdef HAVE_NDO_DFLT_BRIDGE_ADD_MASK #ifdef HAVE_NDO_BRIDGE_GETLINK_NLFLAGS #ifdef HAVE_NDO_BRIDGE_GETLINK_FILTER_MASK_VLAN_FILL return ndo_dflt_bridge_getlink(skb, pid, seq, dev, mode, 0, 0, @@ -2287,7 +2287,7 @@ static int igb_ndo_bridge_getlink(struct sk_buff *skb, u32 pid, u32 seq, #endif /* HAVE_NDO_BRIDGE_GETLINK_NLFLAGS */ #else return ndo_dflt_bridge_getlink(skb, pid, seq, dev, mode); -#endif /* HAVE_NDO_FDB_ADD_VID */ +#endif /* HAVE_NDO_DFLT_BRIDGE_ADD_MASK */ } #endif /* HAVE_BRIDGE_ATTRIBS */ #endif /* NTF_SELF */ diff --git a/lib/librte_eal/linuxapp/kni/ethtool/igb/kcompat.h b/lib/librte_eal/linuxapp/kni/ethtool/igb/kcompat.h index 68a3b9f81b..e2cf71e0f6 100644 --- a/lib/librte_eal/linuxapp/kni/ethtool/igb/kcompat.h +++ b/lib/librte_eal/linuxapp/kni/ethtool/igb/kcompat.h @@ -3881,20 +3881,29 @@ skb_set_hash(struct sk_buff *skb, __u32 hash, __always_unused int type) #endif /* < RHEL7 */ #endif /* < 3.14.0 */ -#if ( LINUX_VERSION_CODE >= KERNEL_VERSION(3,16,0) ) +#if (( LINUX_VERSION_CODE >= KERNEL_VERSION(3,16,0) ) \ + || ( RHEL_RELEASE_CODE >= RHEL_RELEASE_VERSION(7,2) )) +#undef SET_ETHTOOL_OPS #define SET_ETHTOOL_OPS(netdev, ops) ((netdev)->ethtool_ops = (ops)) #define HAVE_VF_MIN_MAX_TXRATE 1 #endif /* >= 3.16.0 */ -#if ( LINUX_VERSION_CODE >= KERNEL_VERSION(3,19,0) ) +#if (( LINUX_VERSION_CODE >= KERNEL_VERSION(3,19,0) ) \ + || ( RHEL_RELEASE_CODE >= RHEL_RELEASE_VERSION(7,2) )) +#define HAVE_NDO_DFLT_BRIDGE_ADD_MASK +#if (!( RHEL_RELEASE_CODE >= RHEL_RELEASE_VERSION(7,2) )) #define HAVE_NDO_FDB_ADD_VID +#endif /* !RHEL 7.2 */ #endif /* >= 3.19.0 */ -#if ( LINUX_VERSION_CODE >= KERNEL_VERSION(4,0,0) ) +#if (( LINUX_VERSION_CODE >= KERNEL_VERSION(4,0,0) ) \ + || ( RHEL_RELEASE_CODE >= RHEL_RELEASE_VERSION(7,2) )) /* vlan_tx_xx functions got renamed to skb_vlan */ #define vlan_tx_tag_get skb_vlan_tag_get #define vlan_tx_tag_present skb_vlan_tag_present +#if (!( RHEL_RELEASE_CODE >= RHEL_RELEASE_VERSION(7,2) )) #define HAVE_NDO_BRIDGE_SET_DEL_LINK_FLAGS +#endif /* !RHEL 7.2 */ #endif /* 4.0.0 */ #if ( LINUX_VERSION_CODE >= KERNEL_VERSION(4,1,0) )