[dpdk-dev] [PATCH v5 3/3] app/testpmd: support tunneled TSO in csum fwd engine

Ananyev, Konstantin konstantin.ananyev at intel.com
Tue Sep 27 19:25:56 CEST 2016



> -----Original Message-----
> From: Tan, Jianfeng
> Sent: Monday, September 26, 2016 2:49 PM
> To: dev at dpdk.org
> Cc: Ananyev, Konstantin <konstantin.ananyev at intel.com>; Wu, Jingjing <jingjing.wu at intel.com>; Tan, Jianfeng
> <jianfeng.tan at intel.com>; Zhe Tao <zhe.tao at intel.com>
> Subject: [PATCH v5 3/3] app/testpmd: support tunneled TSO in csum fwd engine
> 
> Add a new command "tunnel_tso set <tso_segsz> <port>" to enable
> segmentation offload and set MSS to tso_segsz. Another command,
> "tunnel_tso show <port>" is added to show tunneled packet MSS.
> Result 0 means tunnel_tso is disabled.
> 
> The original commands, "tso set <tso_segsz> <port>" and "tso show
> <port>" are only reponsible for non-tunneled packets. And the new
> commands are for tunneled packets.
> 
> Below conditions are needed to make it work:
>   a. tunnel TSO is supported by the NIC;
>   b. "csum parse_tunnel" must be set so that tunneled pkts are
>      recognized;
>   c. for tunneled pkts with outer L3 is IPv4, "csum set outer-ip"
>      must be set to hw, because after tso, total_len of outer IP
>      header is changed, and the checksum of outer IP header calculated
>      by sw should be wrong; that is not necessary for IPv6 tunneled
>      pkts because there's no checksum field to be filled anymore.
> 
> Suggested-by: Konstantin Ananyev <konstantin.ananyev at intel.com>
> Signed-off-by: Zhe Tao <zhe.tao at intel.com>
> Signed-off-by: Jianfeng Tan <jianfeng.tan at intel.com>
> ---
> v5:
>  -- Instead of reuse original tso command, add a new command for
>     tunneled tso;
>  -- Fix a implicit conversion from long -> int bug, as the parameter
>     of process_outer_cksums() in previous version.
>  app/test-pmd/cmdline.c  | 132 +++++++++++++++++++++++++++++++++++++++++++++---
>  app/test-pmd/csumonly.c |  69 ++++++++++++++++++-------
>  app/test-pmd/testpmd.h  |   3 +-
>  3 files changed, 179 insertions(+), 25 deletions(-)
> 

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



More information about the dev mailing list