[dpdk-dev] ixgbe: remove useless fields in tx_offload on TCP checksum request

Message ID 1446108473-14311-1-git-send-email-david.marchand@6wind.com (mailing list archive)
State Accepted, archived
Headers

Commit Message

David Marchand Oct. 29, 2015, 8:47 a.m. UTC
  From: Didier Pallard <didier.pallard@6wind.com>

According to Table 7-38: Valid Fields by Offload Option
of Intel ® 82599 10 GbE Controller Datasheet,
L4LEN field is not needed for L4 XSUM computation by the hardware.
So remove l4_len from tx_offload_mask in ixgbe_set_xmit_ctx
function used to build the context transmitted to the hardware.

Signed-off-by: Didier Pallard <didier.pallard@6wind.com>
Signed-off-by: David Marchand <david.marchand@6wind.com>
---
 drivers/net/ixgbe/ixgbe_rxtx.c | 1 -
 1 file changed, 1 deletion(-)
  

Comments

Wenzhuo Lu Nov. 2, 2015, 7:26 a.m. UTC | #1
Hi,

> -----Original Message-----

> From: dev [mailto:dev-bounces@dpdk.org] On Behalf Of David Marchand

> Sent: Thursday, October 29, 2015 4:48 PM

> To: dev@dpdk.org

> Subject: [dpdk-dev] [PATCH] ixgbe: remove useless fields in tx_offload on TCP

> checksum request

> 

> From: Didier Pallard <didier.pallard@6wind.com>

> 

> According to Table 7-38: Valid Fields by Offload Option of Intel ® 82599 10

> GbE Controller Datasheet, L4LEN field is not needed for L4 XSUM

> computation by the hardware.

> So remove l4_len from tx_offload_mask in ixgbe_set_xmit_ctx function used

> to build the context transmitted to the hardware.

> 

> Signed-off-by: Didier Pallard <didier.pallard@6wind.com>

> Signed-off-by: David Marchand <david.marchand@6wind.com>

Acked-by: Wenzhuo Lu <wenzhuo.lu@intel.com>
  
Thomas Monjalon Nov. 3, 2015, 10:37 a.m. UTC | #2
> > From: Didier Pallard <didier.pallard@6wind.com>
> > 
> > According to Table 7-38: Valid Fields by Offload Option of Intel ® 82599 10
> > GbE Controller Datasheet, L4LEN field is not needed for L4 XSUM
> > computation by the hardware.
> > So remove l4_len from tx_offload_mask in ixgbe_set_xmit_ctx function used
> > to build the context transmitted to the hardware.
> > 
> > Signed-off-by: Didier Pallard <didier.pallard@6wind.com>
> > Signed-off-by: David Marchand <david.marchand@6wind.com>
> Acked-by: Wenzhuo Lu <wenzhuo.lu@intel.com>

Applied, thanks
  

Patch

diff --git a/drivers/net/ixgbe/ixgbe_rxtx.c b/drivers/net/ixgbe/ixgbe_rxtx.c
index a598a72..26bc2a1 100644
--- a/drivers/net/ixgbe/ixgbe_rxtx.c
+++ b/drivers/net/ixgbe/ixgbe_rxtx.c
@@ -415,7 +415,6 @@  ixgbe_set_xmit_ctx(struct ixgbe_tx_queue *txq,
 			mss_l4len_idx |= sizeof(struct tcp_hdr) << IXGBE_ADVTXD_L4LEN_SHIFT;
 			tx_offload_mask.l2_len |= ~0;
 			tx_offload_mask.l3_len |= ~0;
-			tx_offload_mask.l4_len |= ~0;
 			break;
 		case PKT_TX_SCTP_CKSUM:
 			type_tucmd_mlhl |= IXGBE_ADVTXD_TUCMD_L4T_SCTP |