On 9/6/2019 2:28 AM, Wang ShougangX wrote: > This patch fixed the reset function to avoid crash when user don't > call port reset , port stop 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 | 6 ++++++ > 1 file changed, 6 insertions(+) > > diff --git a/app/test-pmd/testpmd.c b/app/test-pmd/testpmd.c > index e8e2a39b6..273a7aa02 100644 > --- a/app/test-pmd/testpmd.c > +++ b/app/test-pmd/testpmd.c > @@ -2344,6 +2344,9 @@ reset_port(portid_t pid) > if (port_id_is_invalid(pid, ENABLED_WARN)) > return; > > + printf("Stopping ports...\n"); > + stop_port(pid); > + > printf("Resetting ports...\n"); > > RTE_ETH_FOREACH_DEV(pi) { > @@ -2372,6 +2375,9 @@ reset_port(portid_t pid) > } > } > > + printf("Starting ports...\n"); > + start_port(pid); > + > printf("Done\n"); > }
Hi Shougang, Not sure if 'reset' command should do more than it says, if there is a requirement that port should be stopped, why not add this condition with an error message so that user can stop the port in advance if she wants. Btw, a few things related, - 'reset_port()' function has a loop inside, 'RTE_ETH_FOREACH_DEV()' but it works on single port, the loop looked unnecessary to me, can you please check and remove the loop if required? - I am not able to see 'reset' has been documented in 'doc/guides/testpmd_app_ug/testpmd_funcs.rst', it may be missing, can you please check and add it if required? Thanks, ferruh