From mboxrd@z Thu Jan  1 00:00:00 1970
Return-Path: <jiayu.hu@intel.com>
Received: from mga12.intel.com (mga12.intel.com [192.55.52.136])
 by dpdk.org (Postfix) with ESMTP id 378571BB20
 for <dev@dpdk.org>; Fri, 22 Jun 2018 07:46:12 +0200 (CEST)
X-Amp-Result: SKIPPED(no attachment in message)
X-Amp-File-Uploaded: False
Received: from fmsmga001.fm.intel.com ([10.253.24.23])
 by fmsmga106.fm.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384;
 21 Jun 2018 22:46:11 -0700
X-ExtLoop1: 1
X-IronPort-AV: E=Sophos;i="5.51,255,1526367600"; d="scan'208";a="66269751"
Received: from dpdk15.sh.intel.com ([10.67.111.146])
 by fmsmga001.fm.intel.com with ESMTP; 21 Jun 2018 22:46:01 -0700
From: Jiayu Hu <jiayu.hu@intel.com>
To: dev@dpdk.org
Cc: xiao.w.wang@intel.com, konstantin.ananyev@intel.com,
 yuwei1.zhang@intel.com, bernard.iremonger@intel.com, thomas@monjalon.net,
 Jiayu Hu <jiayu.hu@intel.com>
Date: Fri, 22 Jun 2018 13:54:03 +0800
Message-Id: <1529646843-45903-4-git-send-email-jiayu.hu@intel.com>
X-Mailer: git-send-email 2.7.4
In-Reply-To: <1529646843-45903-1-git-send-email-jiayu.hu@intel.com>
References: <1529205194-87434-1-git-send-email-jiayu.hu@intel.com>
 <1529646843-45903-1-git-send-email-jiayu.hu@intel.com>
Subject: [dpdk-dev] [PATCH v3 3/3] gso: update documents for UDP/IPv4 GSO
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>
X-List-Received-Date: Fri, 22 Jun 2018 05:46:12 -0000

This patch updates the programmer guide and testpmd user guide for
UDP/IPv4 GSO.

Signed-off-by: Jiayu Hu <jiayu.hu@intel.com>
---
 doc/guides/prog_guide/generic_segmentation_offload_lib.rst | 10 ++++++++++
 doc/guides/testpmd_app_ug/testpmd_funcs.rst                |  7 +++++++
 2 files changed, 17 insertions(+)

diff --git a/doc/guides/prog_guide/generic_segmentation_offload_lib.rst b/doc/guides/prog_guide/generic_segmentation_offload_lib.rst
index 9959f0d..0cfc119 100644
--- a/doc/guides/prog_guide/generic_segmentation_offload_lib.rst
+++ b/doc/guides/prog_guide/generic_segmentation_offload_lib.rst
@@ -43,6 +43,7 @@ Limitations
 #. Currently, the GSO library supports the following IPv4 packet types:
 
  - TCP
+ - UDP
  - VxLAN
  - GRE
 
@@ -146,6 +147,15 @@ TCP/IPv4 GSO
 TCP/IPv4 GSO supports segmentation of suitably large TCP/IPv4 packets, which
 may also contain an optional VLAN tag.
 
+UDP/IPv4 GSO
+~~~~~~~~~~~~
+UDP/IPv4 GSO supports segmentation of suitably large UDP/IPv4 packets, which
+may also contain an optional VLAN tag. UDP GSO is the same as IP fragmentation.
+Specifically, UDP GSO treats the UDP header as a part of the payload and
+does not modify it during segmentation. Therefore, after UDP GSO, only the
+first output packet has the original UDP header, and others just have l2
+and l3 headers.
+
 VxLAN GSO
 ~~~~~~~~~
 VxLAN packets GSO supports segmentation of suitably large VxLAN packets,
diff --git a/doc/guides/testpmd_app_ug/testpmd_funcs.rst b/doc/guides/testpmd_app_ug/testpmd_funcs.rst
index 0d6fd50..6f2de24 100644
--- a/doc/guides/testpmd_app_ug/testpmd_funcs.rst
+++ b/doc/guides/testpmd_app_ug/testpmd_funcs.rst
@@ -1059,6 +1059,13 @@ By default, GSO is disabled for all ports.
 
    testpmd> csum set tcp hw <port_id>
 
+   UDP GSO is the same as IP fragmentation, which treats the UDP header
+   as the payload and does not modify it during segmentation. That is,
+   after UDP GSO, only the first output fragment has the original UDP
+   header. Therefore, users need to enable HW IP checksum calculation
+   and SW UDP checksum calculation for GSO-enabled ports, if they want
+   correct checksums for UDP/IPv4 packets.
+
 set gso segsz
 ~~~~~~~~~~~~~
 
-- 
2.7.4