On Fri, Nov 14, 2014 at 06:03:21PM +0100, Olivier Matz wrote: > This definition is specific to Intel PMD drivers and its definition > "indicate what bits required for building TX context" shows that it > should not be in the generic rte_mbuf.h but in the PMD driver. > > Signed-off-by: Olivier Matz <olivier.matz at 6wind.com>
Acked-by: Bruce Richardson <bruce.richardson at intel.com> > --- > lib/librte_mbuf/rte_mbuf.h | 5 ----- > lib/librte_pmd_e1000/igb_rxtx.c | 8 +++++++- > lib/librte_pmd_ixgbe/ixgbe_rxtx.c | 8 +++++++- > 3 files changed, 14 insertions(+), 7 deletions(-) > > diff --git a/lib/librte_mbuf/rte_mbuf.h b/lib/librte_mbuf/rte_mbuf.h > index d7070e9..68fb988 100644 > --- a/lib/librte_mbuf/rte_mbuf.h > +++ b/lib/librte_mbuf/rte_mbuf.h > @@ -129,11 +129,6 @@ extern "C" { > /* Use final bit of flags to indicate a control mbuf */ > #define CTRL_MBUF_FLAG (1ULL << 63) /**< Mbuf contains control data */ > > -/** > - * Bit Mask to indicate what bits required for building TX context > - */ > -#define PKT_TX_OFFLOAD_MASK (PKT_TX_VLAN_PKT | PKT_TX_IP_CKSUM | > PKT_TX_L4_MASK) > - > /* define a set of marker types that can be used to refer to set points in > the > * mbuf */ > typedef void *MARKER[0]; /**< generic marker for a point in a structure > */ > diff --git a/lib/librte_pmd_e1000/igb_rxtx.c b/lib/librte_pmd_e1000/igb_rxtx.c > index b406397..433c616 100644 > --- a/lib/librte_pmd_e1000/igb_rxtx.c > +++ b/lib/librte_pmd_e1000/igb_rxtx.c > @@ -84,6 +84,12 @@ > ETH_RSS_IPV6_UDP | \ > ETH_RSS_IPV6_UDP_EX) > > +/* Bit Mask to indicate what bits required for building TX context */ > +#define IGB_TX_OFFLOAD_MASK ( \ > + PKT_TX_VLAN_PKT | \ > + PKT_TX_IP_CKSUM | \ > + PKT_TX_L4_MASK) > + > static inline struct rte_mbuf * > rte_rxmbuf_alloc(struct rte_mempool *mp) > { > @@ -400,7 +406,7 @@ eth_igb_xmit_pkts(void *tx_queue, struct rte_mbuf > **tx_pkts, > ol_flags = tx_pkt->ol_flags; > vlan_macip_lens.f.vlan_tci = tx_pkt->vlan_tci; > vlan_macip_lens.f.l2_l3_len = tx_pkt->l2_l3_len; > - tx_ol_req = ol_flags & PKT_TX_OFFLOAD_MASK; > + tx_ol_req = ol_flags & IGB_TX_OFFLOAD_MASK; > > /* If a Context Descriptor need be built . */ > if (tx_ol_req) { > diff --git a/lib/librte_pmd_ixgbe/ixgbe_rxtx.c > b/lib/librte_pmd_ixgbe/ixgbe_rxtx.c > index 7e470ce..ca35db2 100644 > --- a/lib/librte_pmd_ixgbe/ixgbe_rxtx.c > +++ b/lib/librte_pmd_ixgbe/ixgbe_rxtx.c > @@ -90,6 +90,12 @@ > ETH_RSS_IPV6_UDP | \ > ETH_RSS_IPV6_UDP_EX) > > +/* Bit Mask to indicate what bits required for building TX context */ > +#define IXGBE_TX_OFFLOAD_MASK ( \ > + PKT_TX_VLAN_PKT | \ > + PKT_TX_IP_CKSUM | \ > + PKT_TX_L4_MASK) > + > static inline struct rte_mbuf * > rte_rxmbuf_alloc(struct rte_mempool *mp) > { > @@ -580,7 +586,7 @@ ixgbe_xmit_pkts(void *tx_queue, struct rte_mbuf **tx_pkts, > ol_flags = tx_pkt->ol_flags; > > /* If hardware offload required */ > - tx_ol_req = ol_flags & PKT_TX_OFFLOAD_MASK; > + tx_ol_req = ol_flags & IXGBE_TX_OFFLOAD_MASK; > if (tx_ol_req) { > vlan_macip_lens.f.vlan_tci = tx_pkt->vlan_tci; > vlan_macip_lens.f.l2_l3_len = tx_pkt->l2_l3_len; > -- > 2.1.0 >