> -----Original Message-----
> From: dev [mailto:dev-bounces at dpdk.org] On Behalf Of David Marchand
> Sent: Monday, June 01, 2015 1:11 PM
> To: dev at dpdk.org
> Subject: [dpdk-dev] [PATCH] ixgbe: fix TSO in IPv6
> 
> From: Didier Pallard <didier.pallard at 6wind.com>
> 
> When TSO is used with IPv6, generated frames are incorrect.
> L4 frame is OK, but length field of IPv6 header was not populated correctly.
> 
> Signed-off-by: Didier Pallard <didier.pallard at 6wind.com>
> ---
>  drivers/net/ixgbe/ixgbe_rxtx.c |   13 +++++++++----
>  1 file changed, 9 insertions(+), 4 deletions(-)
> 
> diff --git a/drivers/net/ixgbe/ixgbe_rxtx.c b/drivers/net/ixgbe/ixgbe_rxtx.c
> index 4f9ab22..d123612 100644
> --- a/drivers/net/ixgbe/ixgbe_rxtx.c
> +++ b/drivers/net/ixgbe/ixgbe_rxtx.c
> @@ -375,10 +375,15 @@ ixgbe_set_xmit_ctx(struct ixgbe_tx_queue *txq,
> 
>       /* check if TCP segmentation required for this packet */
>       if (ol_flags & PKT_TX_TCP_SEG) {
> -             /* implies IP cksum and TCP cksum */
> -             type_tucmd_mlhl = IXGBE_ADVTXD_TUCMD_IPV4 |
> -                     IXGBE_ADVTXD_TUCMD_L4T_TCP |
> -                     IXGBE_ADVTXD_DTYP_CTXT | IXGBE_ADVTXD_DCMD_DEXT;
> +             /* implies IP cksum in IPv4 */
> +             if (ol_flags & PKT_TX_IP_CKSUM)
> +                     type_tucmd_mlhl = IXGBE_ADVTXD_TUCMD_IPV4 |
> +                             IXGBE_ADVTXD_TUCMD_L4T_TCP |
> +                             IXGBE_ADVTXD_DTYP_CTXT | IXGBE_ADVTXD_DCMD_DEXT;
> +             else
> +                     type_tucmd_mlhl =
> +                             IXGBE_ADVTXD_TUCMD_L4T_TCP |
> +                             IXGBE_ADVTXD_DTYP_CTXT | IXGBE_ADVTXD_DCMD_DEXT;
> 
>               tx_offload_mask.l2_len |= ~0;
>               tx_offload_mask.l3_len |= ~0;
> --

Acked-by: Konstantin Ananyev <konstantin.ananyev at intel.com>

> 1.7.10.4

Reply via email to