[v2] ci: add vm jobs for aarch64 builds with tests
diff mbox series

Message ID 1598615137-16401-1-git-send-email-juraj.linkes@pantheon.tech
State Accepted
Delegated to: David Marchand
Headers show
Series
  • [v2] ci: add vm jobs for aarch64 builds with tests
Related show

Checks

Context Check Description
ci/checkpatch success coding style OK
ci/Intel-compilation success Compilation OK
ci/travis-robot success Travis build: passed
ci/iol-mellanox-Performance success Performance Testing PASS
ci/iol-testing success Testing PASS

Commit Message

Juraj Linkeš Aug. 28, 2020, 11:45 a.m. UTC
Tests requiring hugepages do not work outside of VM environment because
of security limitations. Add aarch64 builds which run tests to run in
a VM to avoid these limitations. Leave non-hugepage environments since
the tests may produce different results in hugepage and non-hugepage
environments.

Signed-off-by: Juraj Linkeš <juraj.linkes@pantheon.tech>
---
 .travis.yml | 12 ++++++++++++
 1 file changed, 12 insertions(+)

Comments

Ruifeng Wang Sept. 1, 2020, 7:15 a.m. UTC | #1
> -----Original Message-----
> From: dev <dev-bounces@dpdk.org> On Behalf Of Juraj Linke?
> Sent: Friday, August 28, 2020 7:46 PM
> To: thomas@monjalon.net; david.marchand@redhat.com;
> aconole@redhat.com; maicolgabriel@hotmail.com
> Cc: dev@dpdk.org; Juraj Linkeš <juraj.linkes@pantheon.tech>
> Subject: [dpdk-dev] [PATCH v2] ci: add vm jobs for aarch64 builds with tests
> 
> Tests requiring hugepages do not work outside of VM environment because
> of security limitations. Add aarch64 builds which run tests to run in a VM to
> avoid these limitations. Leave non-hugepage environments since the tests
> may produce different results in hugepage and non-hugepage environments.
> 
> Signed-off-by: Juraj Linkeš <juraj.linkes@pantheon.tech>
> ---
>  .travis.yml | 12 ++++++++++++
>  1 file changed, 12 insertions(+)
> 
> diff --git a/.travis.yml b/.travis.yml
> index d6eeab371..5e12db23b 100644
> --- a/.travis.yml
> +++ b/.travis.yml
> @@ -90,6 +90,12 @@ jobs:
>    - env: DEF_LIB="shared" RUN_TESTS=1
>      arch: arm64
>      compiler: gcc
> +  - env: DEF_LIB="shared" RUN_TESTS=1
> +    dist: focal
> +    arch: arm64-graviton2
> +    virt: vm
> +    group: edge
> +    compiler: gcc
>    - env: DEF_LIB="shared" BUILD_DOCS=1
>      arch: arm64
>      compiler: gcc
> @@ -105,3 +111,9 @@ jobs:
>    - env: DEF_LIB="shared" RUN_TESTS=1
>      arch: arm64
>      compiler: clang
> +  - env: DEF_LIB="shared" RUN_TESTS=1
> +    dist: focal
> +    arch: arm64-graviton2
> +    virt: vm
> +    group: edge
> +    compiler: clang
> --
> 2.20.1

Reviewed-by: Ruifeng Wang <ruifeng.wang@arm.com>
Aaron Conole Sept. 11, 2020, 1:25 p.m. UTC | #2
Juraj Linkeš <juraj.linkes@pantheon.tech> writes:

> Tests requiring hugepages do not work outside of VM environment because
> of security limitations. Add aarch64 builds which run tests to run in
> a VM to avoid these limitations. Leave non-hugepage environments since
> the tests may produce different results in hugepage and non-hugepage
> environments.
>
> Signed-off-by: Juraj Linkeš <juraj.linkes@pantheon.tech>
> ---

I'm okay with the change, but I wonder - does it make sense to have the
non-vm build around with these?  The builds you're adding cover all the
cases of the container build, and add the additional hugepage tests.

Maybe we should drop the other tests?  It can be a follow up patch, WDYT?

Acked-by: Aaron Conole <aconole@redhat.com>

>  .travis.yml | 12 ++++++++++++
>  1 file changed, 12 insertions(+)
>
> diff --git a/.travis.yml b/.travis.yml
> index d6eeab371..5e12db23b 100644
> --- a/.travis.yml
> +++ b/.travis.yml
> @@ -90,6 +90,12 @@ jobs:
>    - env: DEF_LIB="shared" RUN_TESTS=1
>      arch: arm64
>      compiler: gcc
> +  - env: DEF_LIB="shared" RUN_TESTS=1
> +    dist: focal
> +    arch: arm64-graviton2
> +    virt: vm
> +    group: edge
> +    compiler: gcc
>    - env: DEF_LIB="shared" BUILD_DOCS=1
>      arch: arm64
>      compiler: gcc
> @@ -105,3 +111,9 @@ jobs:
>    - env: DEF_LIB="shared" RUN_TESTS=1
>      arch: arm64
>      compiler: clang
> +  - env: DEF_LIB="shared" RUN_TESTS=1
> +    dist: focal
> +    arch: arm64-graviton2
> +    virt: vm
> +    group: edge
> +    compiler: clang
Juraj Linkeš Sept. 16, 2020, 8:03 a.m. UTC | #3
> -----Original Message-----
> From: Aaron Conole <aconole@redhat.com>
> Sent: Friday, September 11, 2020 3:25 PM
> To: Juraj Linkeš <juraj.linkes@pantheon.tech>
> Cc: thomas@monjalon.net; david.marchand@redhat.com;
> maicolgabriel@hotmail.com; dev@dpdk.org
> Subject: Re: [PATCH v2] ci: add vm jobs for aarch64 builds with tests
> 
> Juraj Linkeš <juraj.linkes@pantheon.tech> writes:
> 
> > Tests requiring hugepages do not work outside of VM environment
> > because of security limitations. Add aarch64 builds which run tests to
> > run in a VM to avoid these limitations. Leave non-hugepage
> > environments since the tests may produce different results in hugepage
> > and non-hugepage environments.
> >
> > Signed-off-by: Juraj Linkeš <juraj.linkes@pantheon.tech>
> > ---
> 
> I'm okay with the change, but I wonder - does it make sense to have the non-vm
> build around with these?  The builds you're adding cover all the cases of the
> container build, and add the additional hugepage tests.
> 

Well, the commit message explains why I left the non-vm builds. The test cases may be the same, but the environment is not. We were getting different results when running the same tests with and without huge pages.

> Maybe we should drop the other tests?  It can be a follow up patch, WDYT?

We could, but we'd want to add to run all tests with hugepages both enabled and not enabled. That would be a bigger change I think, but it should be possible, right?

> 
> Acked-by: Aaron Conole <aconole@redhat.com>
> 
> >  .travis.yml | 12 ++++++++++++
> >  1 file changed, 12 insertions(+)
> >
> > diff --git a/.travis.yml b/.travis.yml index d6eeab371..5e12db23b
> > 100644
> > --- a/.travis.yml
> > +++ b/.travis.yml
> > @@ -90,6 +90,12 @@ jobs:
> >    - env: DEF_LIB="shared" RUN_TESTS=1
> >      arch: arm64
> >      compiler: gcc
> > +  - env: DEF_LIB="shared" RUN_TESTS=1
> > +    dist: focal
> > +    arch: arm64-graviton2
> > +    virt: vm
> > +    group: edge
> > +    compiler: gcc
> >    - env: DEF_LIB="shared" BUILD_DOCS=1
> >      arch: arm64
> >      compiler: gcc
> > @@ -105,3 +111,9 @@ jobs:
> >    - env: DEF_LIB="shared" RUN_TESTS=1
> >      arch: arm64
> >      compiler: clang
> > +  - env: DEF_LIB="shared" RUN_TESTS=1
> > +    dist: focal
> > +    arch: arm64-graviton2
> > +    virt: vm
> > +    group: edge
> > +    compiler: clang
>
David Marchand Oct. 1, 2020, 6:49 a.m. UTC | #4
On Fri, Aug 28, 2020 at 1:45 PM Juraj Linkeš <juraj.linkes@pantheon.tech> wrote:
>
> Tests requiring hugepages do not work outside of VM environment because
> of security limitations. Add aarch64 builds which run tests to run in
> a VM to avoid these limitations. Leave non-hugepage environments since
> the tests may produce different results in hugepage and non-hugepage
> environments.
>
> Signed-off-by: Juraj Linkeš <juraj.linkes@pantheon.tech>

Reviewed-by: Ruifeng Wang <ruifeng.wang@arm.com>
Acked-by: Aaron Conole <aconole@redhat.com>


Applied, thanks.

Patch
diff mbox series

diff --git a/.travis.yml b/.travis.yml
index d6eeab371..5e12db23b 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -90,6 +90,12 @@  jobs:
   - env: DEF_LIB="shared" RUN_TESTS=1
     arch: arm64
     compiler: gcc
+  - env: DEF_LIB="shared" RUN_TESTS=1
+    dist: focal
+    arch: arm64-graviton2
+    virt: vm
+    group: edge
+    compiler: gcc
   - env: DEF_LIB="shared" BUILD_DOCS=1
     arch: arm64
     compiler: gcc
@@ -105,3 +111,9 @@  jobs:
   - env: DEF_LIB="shared" RUN_TESTS=1
     arch: arm64
     compiler: clang
+  - env: DEF_LIB="shared" RUN_TESTS=1
+    dist: focal
+    arch: arm64-graviton2
+    virt: vm
+    group: edge
+    compiler: clang