[dpdk-dev,v2,2/2] doc: update testpmd user guide for the heavyweight mode GRO
Checks
Commit Message
This patch is to update testpmd user guide for the heavyweight mode GRO.
Signed-off-by: Jiayu Hu <jiayu.hu@intel.com>
---
doc/guides/testpmd_app_ug/testpmd_funcs.rst | 37 +++++++++++++++++++++++------
1 file changed, 30 insertions(+), 7 deletions(-)
Comments
On 8/17/2017 10:08 AM, Jiayu Hu wrote:
> This patch is to update testpmd user guide for the heavyweight mode GRO.
Documentation can be part of the implementation patch.
It is good to split patches logically, but I don't see the benefit of
splitting patch as documentation and implementation.
>
> Signed-off-by: Jiayu Hu <jiayu.hu@intel.com>
> ---
<...>
>
> +set gro flush interval
> +~~~~~~~~~~~~~~~~~~~~~~
> +
> +Set the interval of flushing GROed packets from reassembly tables::
> +
> + testpmd> set gro flush interval (num)
> +
> +In the heavyweight mode, GROed packets are stored in reassembly tables
> +and need flushing from the tables manually. This command is to set the
> +number of performing GRO operations between two flushing operations.
> +
> +The value of ``num`` should be in the range of 0 to ``GRO_MAX_FLUSH_INTERVAL``.
> +``0`` means flush GROed packets from the tables when one GRO operation
> +finishes.
It can be good to mention default interval value is
GRO_DEFAULT_FLUSH_INTERVAL if this command not issued.
> +
> mac_addr add
> ~~~~~~~~~~~~
>
>
Hi,
> -----Original Message-----
> From: Yigit, Ferruh
> Sent: Monday, August 21, 2017 7:04 PM
> To: Hu, Jiayu <jiayu.hu@intel.com>; dev@dpdk.org
> Cc: Ananyev, Konstantin <konstantin.ananyev@intel.com>; Tan, Jianfeng
> <jianfeng.tan@intel.com>; thomas@monjalon.net; Wu, Jingjing
> <jingjing.wu@intel.com>; Yao, Lei A <lei.a.yao@intel.com>
> Subject: Re: [PATCH v2 2/2] doc: update testpmd user guide for the
> heavyweight mode GRO
>
> On 8/17/2017 10:08 AM, Jiayu Hu wrote:
> > This patch is to update testpmd user guide for the heavyweight mode GRO.
>
> Documentation can be part of the implementation patch.
> It is good to split patches logically, but I don't see the benefit of
> splitting patch as documentation and implementation.
OK, I will combine these two patches in the next version.
>
> >
> > Signed-off-by: Jiayu Hu <jiayu.hu@intel.com>
> > ---
>
> <...>
>
> >
> > +set gro flush interval
> > +~~~~~~~~~~~~~~~~~~~~~~
> > +
> > +Set the interval of flushing GROed packets from reassembly tables::
> > +
> > + testpmd> set gro flush interval (num)
> > +
> > +In the heavyweight mode, GROed packets are stored in reassembly tables
> > +and need flushing from the tables manually. This command is to set the
> > +number of performing GRO operations between two flushing operations.
> > +
> > +The value of ``num`` should be in the range of 0 to
> ``GRO_MAX_FLUSH_INTERVAL``.
> > +``0`` means flush GROed packets from the tables when one GRO operation
> > +finishes.
>
> It can be good to mention default interval value is
> GRO_DEFAULT_FLUSH_INTERVAL if this command not issued.
Thanks, I will add it in the next patch.
BRs,
Jiayu
>
> > +
> > mac_addr add
> > ~~~~~~~~~~~~
> >
> >
@@ -898,12 +898,12 @@ Display the status of TCP Segmentation Offload::
testpmd> tso show (port_id)
-gro
-~~~
+set port - gro
+~~~~~~~~~~~~~~
Enable or disable GRO in ``csum`` forwarding engine::
- testpmd> gro (on|off) (port_id)
+ testpmd> set port (port_id) gro (heavymode|lightmode) (on|off)
If enabled, the csum forwarding engine will perform GRO on the TCP/IPv4
packets received from the given port.
@@ -914,10 +914,18 @@ GRO. By default, GRO is disabled for all ports.
.. note::
When enable GRO for a port, TCP/IPv4 packets received from the port
- will be performed GRO. After GRO, the merged packets are multi-segments.
- But csum forwarding engine doesn't support to calculate TCP checksum
- for multi-segment packets in SW. So please select TCP HW checksum
- calculation for the port which GROed packets are transmitted to.
+ will be performed GRO. After GRO, all merged packets have bad
+ checksums, since the GRO library doesn't re-calculate checksums for
+ the merged packets. Therefore, if users want the merged packets to
+ have correct checksums, please select IP and TCP HW checksum calculation
+ for the port which the merged packets are transmitted to.
+
+show port - gro
+~~~~~~~~~~~~~~~
+
+Display GRO configuration::
+
+ testpmd> show port (port_id) gro
gro set
~~~~~~~
@@ -932,6 +940,21 @@ number of packets a GRO table can store.
If current packet number is greater than or equal to the max value, GRO
will stop processing incoming packets.
+set gro flush interval
+~~~~~~~~~~~~~~~~~~~~~~
+
+Set the interval of flushing GROed packets from reassembly tables::
+
+ testpmd> set gro flush interval (num)
+
+In the heavyweight mode, GROed packets are stored in reassembly tables
+and need flushing from the tables manually. This command is to set the
+number of performing GRO operations between two flushing operations.
+
+The value of ``num`` should be in the range of 0 to ``GRO_MAX_FLUSH_INTERVAL``.
+``0`` means flush GROed packets from the tables when one GRO operation
+finishes.
+
mac_addr add
~~~~~~~~~~~~