Hi Wenxuan, > -----Original Message----- > From: Wu, WenxuanX <wenxuanx...@intel.com> > Sent: Thursday, February 17, 2022 6:14 PM > To: Yang, Qiming <qiming.y...@intel.com>; Zhang, Qi Z > <qi.z.zh...@intel.com>; Li, Xiaoyun <xiaoyun...@intel.com>; Singh, Aman Deep > <aman.deep.si...@intel.com>; Zhang, Yuying <yuying.zh...@intel.com> > Cc: dev@dpdk.org > Subject: [PATCH 1/2] app/testpmd: fix quit testpmd with vfs and pf > > From: wenxuan wu <wenxuanx...@intel.com> > > When testpmd startups with pf and vfs,this error occurs when quitting, > results in > pf is released before vfs ,so the vf would access an freed heap memory. > > The solution is that release our allocated ports in reverse order,add two > macros > RTE_ETH_FOREACH_DEV_REVERSE_OWNED_BY and > RTE_ETH_FOREACH_DEV_REVERSE,which would be used in quit procedure of > testpmd, error is fixed. >
Please correct grammatical errors and refine your commit log. > Fixes: d3a274ce9dee ("app/testpmd: handle SIGINT and SIGTERM") > Cc: sta...@dpdk.org > > Signed-off-by: wenxuan wu <wenxuanx...@intel.com> > --- > app/test-pmd/testpmd.c | 4 ++-- > 1 file changed, 2 insertions(+), 2 deletions(-) > > diff --git a/app/test-pmd/testpmd.c b/app/test-pmd/testpmd.c index > e1da961311..698b6d8cc4 100644 > --- a/app/test-pmd/testpmd.c > +++ b/app/test-pmd/testpmd.c > @@ -3384,12 +3384,12 @@ pmd_test_exit(void) #endif > if (ports != NULL) { > no_link_check = 1; > - RTE_ETH_FOREACH_DEV(pt_id) { > + RTE_ETH_FOREACH_DEV_REVERSE(pt_id) { > printf("\nStopping port %d...\n", pt_id); > fflush(stdout); > stop_port(pt_id); > } > - RTE_ETH_FOREACH_DEV(pt_id) { > + RTE_ETH_FOREACH_DEV_REVERSE(pt_id) { > printf("\nShutting down port %d...\n", pt_id); > fflush(stdout); > close_port(pt_id); > -- > 2.25.1