Hi Shougangx > -----Original Message----- > From: dev [mailto:dev-boun...@dpdk.org] On Behalf Of Wang ShougangX > Sent: Friday, September 20, 2019 4:14 AM > To: dev@dpdk.org > Cc: Lu, Wenzhuo <wenzhuo...@intel.com>; Yang, Qiming > <qiming.y...@intel.com>; Yigit, Ferruh <ferruh.yi...@intel.com>; Wang, > ShougangX <shougangx.w...@intel.com>; sta...@dpdk.org > Subject: [dpdk-dev] [PATCH v2] app/testpmd: fix Segment fault when start > fwd > > This patch fixed the reset function to avoid crash when user don't call port > stop, port reset and port start functions as sequence. > > Fixes: 97f1e19679 ("app/testpmd: add port reset command") > Cc: sta...@dpdk.org > > Signed-off-by: Wang ShougangX <shougangx.w...@intel.com> > --- > app/test-pmd/testpmd.c | 2 ++ > doc/guides/testpmd_app_ug/testpmd_funcs.rst | 9 +++++++++ > 2 files changed, 11 insertions(+) > > diff --git a/app/test-pmd/testpmd.c b/app/test-pmd/testpmd.c index > e8e2a39b6..9224aa1f7 100644 > --- a/app/test-pmd/testpmd.c > +++ b/app/test-pmd/testpmd.c > @@ -2344,6 +2344,8 @@ reset_port(portid_t pid) > if (port_id_is_invalid(pid, ENABLED_WARN)) > return; > > + stop_port(pid); > + > printf("Resetting ports...\n"); > > RTE_ETH_FOREACH_DEV(pi) {
The app/test-pmd/cmdline.c file should be updated at line 760 to add help text for the "port reset (port_id|all)\n" command. > diff --git a/doc/guides/testpmd_app_ug/testpmd_funcs.rst > b/doc/guides/testpmd_app_ug/testpmd_funcs.rst > index 313e0707e..2c459810c 100644 > --- a/doc/guides/testpmd_app_ug/testpmd_funcs.rst > +++ b/doc/guides/testpmd_app_ug/testpmd_funcs.rst > @@ -2041,6 +2041,15 @@ Close all ports or a specific port:: > > testpmd> port close (port_id|all) > > +port reset > +~~~~~~~~~~ > + > +Reset all ports or a specific port:: > + > + testpmd> port reset (port_id|all) > + > +User should (re-)start the port after reset. > + > port config - queue ring size > ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > > -- > 2.17.1 Regards, Bernard.