> -----Original Message----- > From: Aaron Conole <acon...@redhat.com> > Sent: Tuesday, February 25, 2020 22:36 > To: David Marchand <david.march...@redhat.com> > Cc: Ruifeng Wang <ruifeng.w...@arm.com>; Michael Santana > <maicolgabr...@hotmail.com>; Bruce Richardson > <bruce.richard...@intel.com>; dev <dev@dpdk.org>; Gavin Hu > <gavin...@arm.com>; Honnappa Nagarahalli > <honnappa.nagaraha...@arm.com>; nd <n...@arm.com> > Subject: Re: [PATCH v1] ci: add test suite run without hugepage > > David Marchand <david.march...@redhat.com> writes: > > > On Tue, Feb 25, 2020 at 8:33 AM Ruifeng Wang <ruifeng.w...@arm.com> > wrote: > >> > >> This test suite is derived from fast-tests suite. Cases in this suite > >> are run with '--no-huge' flag. > >> > >> The suite aims to cover as many as possible test cases out of the > >> fast-tests suites in the environments without huge pages support, > >> like containers. > >> > >> Signed-off-by: Ruifeng Wang <ruifeng.w...@arm.com> > >> Reviewed-by: Gavin Hu <gavin...@arm.com> > > > > Compilation time is what makes the most of a "tests" job in Travis. > > So I'd prefer we avoid adding more jobs for x86_64 (see below). > > > > > >> --- > >> .ci/linux-build.sh | 4 +++ > >> .travis.yml | 12 +++++++ > >> app/test/meson.build | 75 > >> ++++++++++++++++++++++++++++++++++++++++++++ > >> 3 files changed, 91 insertions(+) > >> > >> diff --git a/.ci/linux-build.sh b/.ci/linux-build.sh index > >> d500c4c00..39515d915 100755 > >> --- a/.ci/linux-build.sh > >> +++ b/.ci/linux-build.sh > >> @@ -92,3 +92,7 @@ fi > >> if [ "$RUN_TESTS" = "1" ]; then > >> sudo meson test -C build --suite fast-tests -t 3 fi > >> + > >> +if [ "$RUN_TESTS_NO_HUGE" = "1" ]; then > >> + sudo meson test -C build --suite nohuge-tests -t 3 fi > > > > You can replace the "boolean" RUN_TESTS with a TESTSUITES variable > > that contains a list of testsuites. > > Then this part becomes: > > > > for testsuite in ${TESTSUITES:-}; do > > sudo meson test -C build --suite $testsuite -t 3 done > > > > (I wonder if we reaaaally need to be root to run those tests w/ and > > w/o hugepages, Aaron?) > > Last I tested, we didn't need root access when not using hugepages (at least > for core library functionality). It's possible that the test suites for PMDs > might > need that access, but we don't run them in the travis environment. > > > > >> diff --git a/.travis.yml b/.travis.yml index b64a81bd0..0e07d52d0 > >> 100644 > >> --- a/.travis.yml > >> +++ b/.travis.yml > >> @@ -43,6 +43,9 @@ jobs: > >> - env: DEF_LIB="shared" RUN_TESTS=1 > >> arch: amd64 > >> compiler: gcc > >> + - env: DEF_LIB="shared" RUN_TESTS_NO_HUGE=1 > >> + arch: amd64 > >> + compiler: gcc > > > > And then we only need to update the existing RUN_TESTS jobs for x86_64. > > I like the suggestion. But I guess we'd just make RUN_TESTS=1 set > TESTSUITES="..." and otherwise, we can have an ARM64 test to do all the test > suites. It should be OK to do all applicable test suites in a single job?
> > Actually, the ideal would be for the tests to automatically SKIP when no > hugepages are enabled. In this way, case will run either w/ hugepage or w/o hugepage but not both. It will run faster, but with less coverage? > > > > >> - env: DEF_LIB="shared" BUILD_DOCS=1 > >> arch: amd64 > >> compiler: gcc > >> @@ -66,6 +69,9 @@ jobs: > >> - env: DEF_LIB="shared" RUN_TESTS=1 > >> arch: amd64 > >> compiler: clang > >> + - env: DEF_LIB="shared" RUN_TESTS_NO_HUGE=1 > >> + arch: amd64 > >> + compiler: clang > >> - env: DEF_LIB="shared" BUILD_DOCS=1 > >> arch: amd64 > >> compiler: clang > >> @@ -101,6 +107,9 @@ jobs: > >> - env: DEF_LIB="static" > >> arch: arm64 > >> compiler: gcc > >> + - env: DEF_LIB="shared" RUN_TESTS_NO_HUGE=1 > >> + arch: arm64 > >> + compiler: gcc > >> - env: DEF_LIB="shared" BUILD_DOCS=1 > >> arch: arm64 > >> compiler: gcc > >> @@ -124,3 +133,6 @@ jobs: > >> - env: DEF_LIB="shared" > >> arch: arm64 > >> compiler: clang > >> + - env: DEF_LIB="shared" RUN_TESTS_NO_HUGE=1 > >> + arch: arm64 > >> + compiler: clang > > > > > > -- > > David Marchand