From 711ba9e23e681b97d547219de8af199ea03a33b3 Mon Sep 17 00:00:00 2001 From: Jijiang Liu Date: Tue, 2 Dec 2014 23:06:05 +0800 Subject: [PATCH] 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 --- lib/librte_mbuf/rte_mbuf.h | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) 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 */ -- 2.20.1