From: Jijiang Liu Date: Tue, 2 Dec 2014 15:06:05 +0000 (+0800) Subject: mbuf: remove aliasing of Tx offloading flags with Rx ones X-Git-Tag: spdx-start~9992 X-Git-Url: http://git.droids-corp.org/?a=commitdiff_plain;h=711ba9e23e681b97d547219de8af199ea03a33b3;p=dpdk.git mbuf: remove aliasing of Tx offloading flags with Rx ones The reason of redefining the PKT_TX_IPV4 and the PKT_TX_IPV6 is listed below, It will avoid to send a packet with a bad info: - we receive a Ether/IP6/IP4/L4/data packet - the driver sets PKT_RX_IPV6_HDR - the stack decapsulates IP6 - the stack sends the packet, it has the PKT_TX_IPV6 flag but it's an IPv4 packet. Signed-off-by: Jijiang Liu Acked-by: Konstantin Ananyev Acked-by: Olivier Matz --- diff --git a/lib/librte_mbuf/rte_mbuf.h b/lib/librte_mbuf/rte_mbuf.h index 2e5fce5188..cbadf8e2bd 100644 --- a/lib/librte_mbuf/rte_mbuf.h +++ b/lib/librte_mbuf/rte_mbuf.h @@ -141,13 +141,13 @@ extern "C" { #define PKT_TX_IP_CKSUM (1ULL << 54) /**< IP cksum of TX pkt. computed by NIC. */ #define PKT_TX_IPV4_CSUM PKT_TX_IP_CKSUM /**< Alias of PKT_TX_IP_CKSUM. */ -/** Tell the NIC it's an IPv4 packet. Required for L4 checksum offload or TSO. */ -#define PKT_TX_IPV4 PKT_RX_IPV4_HDR +/** Packet is IPv4 without requiring IP checksum offload. */ +#define PKT_TX_IPV4 (1ULL << 55) -/** Tell the NIC it's an IPv6 packet. Required for L4 checksum offload or TSO. */ -#define PKT_TX_IPV6 PKT_RX_IPV6_HDR +/** Tell the NIC it's an IPv6 packet.*/ +#define PKT_TX_IPV6 (1ULL << 56) -#define PKT_TX_VLAN_PKT (1ULL << 55) /**< TX packet is a 802.1q VLAN packet. */ +#define PKT_TX_VLAN_PKT (1ULL << 57) /**< TX packet is a 802.1q VLAN packet. */ /* Use final bit of flags to indicate a control mbuf */ #define CTRL_MBUF_FLAG (1ULL << 63) /**< Mbuf contains control data */