From mboxrd@z Thu Jan  1 00:00:00 1970
Return-Path: <dev-bounces@dpdk.org>
Received: from dpdk.org (dpdk.org [92.243.14.124])
	by inbox.dpdk.org (Postfix) with ESMTP id A82E8A04B1;
	Mon, 23 Nov 2020 09:30:57 +0100 (CET)
Received: from [92.243.14.124] (localhost [127.0.0.1])
	by dpdk.org (Postfix) with ESMTP id 851B137AF;
	Mon, 23 Nov 2020 09:30:56 +0100 (CET)
Received: from mga03.intel.com (mga03.intel.com [134.134.136.65])
 by dpdk.org (Postfix) with ESMTP id 7DDA023D
 for <dev@dpdk.org>; Mon, 23 Nov 2020 09:30:53 +0100 (CET)
IronPort-SDR: JrCrm4Be03aWieaedGZePU+Kdre0I8yt1akxDX6c5dbOwE7dPSM3afwpWBfUX/ek3VI9PYCOYU
 i4xIgNxwdTzw==
X-IronPort-AV: E=McAfee;i="6000,8403,9813"; a="171820212"
X-IronPort-AV: E=Sophos;i="5.78,361,1599548400"; d="scan'208";a="171820212"
X-Amp-Result: SKIPPED(no attachment in message)
X-Amp-File-Uploaded: False
Received: from fmsmga007.fm.intel.com ([10.253.24.52])
 by orsmga103.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 23 Nov 2020 00:30:51 -0800
IronPort-SDR: f51bTclZcAYgmvQ7BUyNUkjxUT9ZNcLCVopzYMYGP5nnGgQlOvBbWZVVG/LhbTbW0LeXxTJZ/D
 bmxZMCRp3Mmw==
X-ExtLoop1: 1
X-IronPort-AV: E=Sophos;i="5.78,361,1599548400"; d="scan'208";a="312806760"
Received: from fmsmsx606.amr.corp.intel.com ([10.18.126.86])
 by fmsmga007.fm.intel.com with ESMTP; 23 Nov 2020 00:30:49 -0800
Received: from shsmsx602.ccr.corp.intel.com (10.109.6.142) by
 fmsmsx606.amr.corp.intel.com (10.18.126.86) with Microsoft SMTP Server
 (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.1.1713.5; Mon, 23 Nov 2020 00:30:48 -0800
Received: from shsmsx606.ccr.corp.intel.com (10.109.6.216) by
 SHSMSX602.ccr.corp.intel.com (10.109.6.142) with Microsoft SMTP Server
 (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.1.1713.5; Mon, 23 Nov 2020 16:30:46 +0800
Received: from shsmsx606.ccr.corp.intel.com ([10.109.6.216]) by
 SHSMSX606.ccr.corp.intel.com ([10.109.6.216]) with mapi id 15.01.1713.004;
 Mon, 23 Nov 2020 16:30:46 +0800
From: "Xie, WeiX" <weix.xie@intel.com>
To: "Yang, MurphyX" <murphyx.yang@intel.com>, "dev@dpdk.org" <dev@dpdk.org>
CC: "Yang, Qiming" <qiming.yang@intel.com>, "Zhang, Qi Z"
 <qi.z.zhang@intel.com>, "Yang, SteveX" <stevex.yang@intel.com>, "Yang,
 MurphyX" <murphyx.yang@intel.com>
Thread-Topic: [dpdk-dev] [PATCH] net/ice: fix outer UDP Tx offload checksum
 error
Thread-Index: AQHWwWdyk4xjdNGppkWzsbJyKZxgXKnVYMBw
Date: Mon, 23 Nov 2020 08:30:46 +0000
Message-ID: <7a4b5c1ab4e2435da06b44d21c194d11@intel.com>
References: <20201123070523.21661-1-murphyx.yang@intel.com>
In-Reply-To: <20201123070523.21661-1-murphyx.yang@intel.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
x-originating-ip: [10.239.127.36]
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
Subject: Re: [dpdk-dev] [PATCH] net/ice: fix outer UDP Tx offload checksum
 error
X-BeenThere: dev@dpdk.org
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: DPDK patches and discussions <dev.dpdk.org>
List-Unsubscribe: <https://mails.dpdk.org/options/dev>,
 <mailto:dev-request@dpdk.org?subject=unsubscribe>
List-Archive: <http://mails.dpdk.org/archives/dev/>
List-Post: <mailto:dev@dpdk.org>
List-Help: <mailto:dev-request@dpdk.org?subject=help>
List-Subscribe: <https://mails.dpdk.org/listinfo/dev>,
 <mailto:dev-request@dpdk.org?subject=subscribe>
Errors-To: dev-bounces@dpdk.org
Sender: "dev" <dev-bounces@dpdk.org>

Tested-by:  Xie,WeiX < weix.xie@intel.com>

Regards,
Xie Wei

> -----Original Message-----
> From: dev [mailto:dev-bounces@dpdk.org] On Behalf Of Murphy Yang
> Sent: Monday, November 23, 2020 3:05 PM
> To: dev@dpdk.org
> Cc: Yang, Qiming <qiming.yang@intel.com>; Zhang, Qi Z
> <qi.z.zhang@intel.com>; Yang, SteveX <stevex.yang@intel.com>; Yang,
> MurphyX <murphyx.yang@intel.com>
> Subject: [dpdk-dev] [PATCH] net/ice: fix outer UDP Tx offload checksum
> error
>=20
> If enable hardware outer UDP TX offload checksum, it doesn't take effect
> when send 'IPv6/UDP/VXLAN' packet with error outer UDP checksum.
>=20
> In order to take effect, set the 'L4T_CS' flag valid only when 'L4TUNT'
> equals one and 'EIPT' is not zero. If 'L4T_CS' flag marked, the hardware =
can
> calculate the outer tunneling UDP checksum.
>=20
> Fixes: bd70c451532c ("net/ice: support Tx checksum offload for tunnel")
>=20
> Signed-off-by: Murphy Yang <murphyx.yang@intel.com>
> ---
>  drivers/net/ice/ice_rxtx.c | 7 +++++--
>  1 file changed, 5 insertions(+), 2 deletions(-)
>=20
> diff --git a/drivers/net/ice/ice_rxtx.c b/drivers/net/ice/ice_rxtx.c inde=
x
> 5fbd68eafc..9769e216bf 100644
> --- a/drivers/net/ice/ice_rxtx.c
> +++ b/drivers/net/ice/ice_rxtx.c
> @@ -2319,8 +2319,11 @@ ice_parse_tunneling_params(uint64_t ol_flags,
>  	*cd_tunneling |=3D (tx_offload.l2_len >> 1) <<
>  		ICE_TXD_CTX_QW0_NATLEN_S;
>=20
> -	if ((ol_flags & PKT_TX_OUTER_UDP_CKSUM) &&
> -	    (ol_flags & PKT_TX_OUTER_IP_CKSUM) &&
> +	/**
> +	 * Calculate the tunneling UDP checksum.
> +	 * Shall be set only if L4TUNT =3D 01b and EIPT is not zero
> +	 */
> +	if (!(*cd_tunneling & ICE_TX_CTX_EIPT_NONE) &&
>  	    (*cd_tunneling & ICE_TXD_CTX_UDP_TUNNELING))
>  		*cd_tunneling |=3D ICE_TXD_CTX_QW0_L4T_CS_M;  }
> --
> 2.17.1