Hi Chengwen, Thanks for the review and feedback. Changes suggested by you are incorporated as part of v8 send by Gowrishankar. In v8, have also removed a redundant check for TEST_TYPE_NONE.
Thanks, Amit Shukla > -----Original Message----- > From: fengchengwen <fengcheng...@huawei.com> > Sent: Monday, November 20, 2023 8:25 AM > To: Gowrishankar Muthukrishnan <gmuthukri...@marvell.com>; > dev@dpdk.org > Cc: Anoob Joseph <ano...@marvell.com>; Cheng Jiang > <honest.ji...@foxmail.com>; Kevin Laatz <kevin.la...@intel.com>; Bruce > Richardson <bruce.richard...@intel.com>; Pavan Nikhilesh Bhagavatula > <pbhagavat...@marvell.com>; Amit Prakash Shukla > <amitpraka...@marvell.com> > Subject: [EXT] Re: [PATCH v7 1/4] app/dma-perf: add skip support > > External Email > > ---------------------------------------------------------------------- > Hi Gowrishankar and Amit, > > On 2023/11/17 20:15, Gowrishankar Muthukrishnan wrote: > > From: Amit Prakash Shukla <amitpraka...@marvell.com> > > > > Add support to skip running a dma-perf test-case. > > > > Signed-off-by: Amit Prakash Shukla <amitpraka...@marvell.com> > > Acked-by: Anoob Joseph <ano...@marvell.com> > > --- > > app/test-dma-perf/config.ini | 2 ++ > > app/test-dma-perf/main.c | 23 +++++++++++++++++++++++ > > app/test-dma-perf/main.h | 1 + > > 3 files changed, 26 insertions(+) > > > > diff --git a/app/test-dma-perf/config.ini > > b/app/test-dma-perf/config.ini index b550f4b23f..4d59234b2a 100644 > > --- a/app/test-dma-perf/config.ini > > +++ b/app/test-dma-perf/config.ini > > @@ -36,6 +36,8 @@ > > ; If you do not specify a result file, one will be generated with the > > same name as the configuration ; file, with the addition of "_result.csv" > > at > the end. > > > > +; "skip" To skip a test-case set skip to 1. > > + > > [case1] > > type=DMA_MEM_COPY > > mem_size=10 > > diff --git a/app/test-dma-perf/main.c b/app/test-dma-perf/main.c index > > 5f8bab8f45..c74f1d81bd 100644 > > --- a/app/test-dma-perf/main.c > > +++ b/app/test-dma-perf/main.c > > @@ -320,6 +320,7 @@ load_configs(const char *path) > > const char *case_type; > > const char *lcore_dma; > > const char *mem_size_str, *buf_size_str, *ring_size_str, > > *kick_batch_str; > > + const char *skip; > > int args_nr, nb_vp; > > bool is_dma; > > > > @@ -339,6 +340,13 @@ load_configs(const char *path) > > for (i = 0; i < nb_sections; i++) { > > snprintf(section_name, CFG_NAME_LEN, "case%d", i + 1); > > test_case = &test_cases[i]; > > + > > + skip = rte_cfgfile_get_entry(cfgfile, section_name, "skip"); > > + if (skip && (atoi(skip) == 1)) { > > + test_case->is_skip = true; > > + continue; > > + } > > + > > case_type = rte_cfgfile_get_entry(cfgfile, section_name, > "type"); > > if (case_type == NULL) { > > printf("Error: No case type in case %d, the test will be > finished > > here.\n", @@ -523,6 +531,21 @@ main(int argc, char *argv[]) > > > > printf("Running cases...\n"); > > for (i = 0; i < case_nb; i++) { > > + if (test_cases[i].is_skip) { > > + printf("Test case %d configured to be skipped.\n\n", i > + 1); > > + snprintf(output_str[0], MAX_OUTPUT_STR_LEN, "Skip > the test-case %d\n", > > + i + 1); > > + > > + fd = fopen(rst_path_ptr, "a"); > > + if (!fd) { > > + printf("Open output CSV file error.\n"); > > + return 0; > > + } > > + output_csv(true); > > + fclose(fd); > > + continue; > > + } > > The process is similar to following two cases: > 1\ if (!test_cases[i].is_valid) > 2\ if (test_cases[i].test_type == TEST_TYPE_NONE) > > They just different in error info, suggest abstract one function. > > With above fixed, > Acked-by: Chengwen Feng <fengcheng...@huawei.com> > > Thanks > Chengwen > <snip>