Hi Ferruh, On Thu, Aug 10, 2017 at 10:50:02AM +0100, Ferruh Yigit wrote: > On 8/10/2017 3:50 AM, Jiayu Hu wrote: > > The GRO library provides two reassembly modes: lightweight mode and > > heavyweight mode. This patch is to support the heavyweight mode in > > csum forwarding engine. > > > > With the command "gro (heavymode|lightmode) (on|off) <port id>", users > > can select the lightweight mode or the heavyweight mode to use. With > > the command "gro flush interval <num>", users can set the interval of > > flushing GROed packets from the reassembly tables for the heavyweight > > mode. > > > > Signed-off-by: Jiayu Hu <jiayu...@intel.com> > > --- > > app/test-pmd/cmdline.c | 79 > > ++++++++++++++++++++++++++++++++++++++++++++++--- > > app/test-pmd/config.c | 33 +++++++++++++-------- > > app/test-pmd/csumonly.c | 29 ++++++++++++++---- > > app/test-pmd/testpmd.c | 17 +++++++++++ > > app/test-pmd/testpmd.h | 12 +++++++- > > 5 files changed, 147 insertions(+), 23 deletions(-) > > > > diff --git a/app/test-pmd/cmdline.c b/app/test-pmd/cmdline.c > > index cd8c358..3224ce1 100644 > > --- a/app/test-pmd/cmdline.c > > +++ b/app/test-pmd/cmdline.c > > @@ -423,7 +423,7 @@ static void cmd_help_long_parsed(void *parsed_result, > > "tso show (portid)" > > " Display the status of TCP Segmentation > > Offload.\n\n" > > > > - "gro (on|off) (port_id)" > > + "gro (heavymode|lightmode) (on|off) (port_id)\n" > > Not specific / limited to gro, but I have a few testpmd usability questions: > > 1) to update some settings, there are two root level commands already: > a) set ... (like: "set fwd mac", "set promisc #P on") > b) port config ... (like: "port config #P speed auto duplex auto") > > I don't know what it difference between above two, but thinking as "port > config" is to configure ports and "set" is to set rest of testpmd config > makes sense to me. (but "set vf .." and "set port .." doesn't fit to > this statement) > > Instead of adding "gro" root level command, why not add this under "port > config", like: "port config #P gro on" ? (or "set port #P gro on")
Yes, using 'gro' as root command will make the usage of testpmd inconsistent. I will change the GSO command in the next patch. Besides, there are other root commands, like 'tso', and maybe we need to change them too. > > > 2) Should each configuration set have a corresponding show command? > > How a user can see the current gro setting? > Do we need a "show port gro" ? Yes, I will add one in the next patch. > > > 3) Where to place #P in the command: > There are inconsistencies about where to put it, like: > "port config #P l2-tunnel enable" > "port config mtu #P value" > "port #P rxq #Q start" > > or > > "show port info #P" > "show port #P rss-hash ip4 key" > > It can be good to define a place for it for consistency. Make sense. > > > 4) Using "port" keyword in some commands before port_id: > Like: "set link-down port #P", "reset port #P mirror-rule value" > > Mostly we don't have it: > "show txq info #P #Q", "set bonding mode #M #P", "set stat_qmap rx #P > #Q", "vlan set strip on #P" > > It can be good to define one or other. Agree, and I will add "port" to GRO related commands. Thanks, Jiayu > > And I guess having need to use "port" keyword can be an indication that > command should move under "port" command: > "reset port #P mirror-rule #id" can be "port reset #P mirror-rule #id" > > > Thanks, > ferruh