On 06/05/2021 16:25, David Marchand wrote:
> Add Travis jobs to check compilation with DPDK experimental API enabled.
> This will help us catch issues for the day we need one of them.
> 
> Note: this should not be merged to master, intended for dpdk-latest
> branch only.
> 
> Signed-off-by: David Marchand <[email protected]>
> Signed-off-by: Ian Stokes <[email protected]>
> ---
>  .ci/linux-build.sh                   |  8 +++++++-
>  .github/workflows/build-and-test.yml | 10 +++++++---
>  .travis.yml                          |  3 +++
>  3 files changed, 17 insertions(+), 4 deletions(-)
> 
> diff --git a/.ci/linux-build.sh b/.ci/linux-build.sh
> index 977449350b..c8621201ab 100755
> --- a/.ci/linux-build.sh
> +++ b/.ci/linux-build.sh
> @@ -7,6 +7,9 @@ CFLAGS_FOR_OVS="-g -O2"
>  SPARSE_FLAGS=""
>  EXTRA_OPTS="--enable-Werror"
>  
> +[ -z "$DPDK_EXPERIMENTAL" ] || DPDK=1
> +[ -z "$DPDK_SHARED" ] || DPDK=1
> +
>  function install_kernel()
>  {
>      if [[ "$1" =~ ^5.* ]]; then
> @@ -199,7 +202,7 @@ if [ "$KERNEL" ]; then
>      install_kernel $KERNEL
>  fi
>  
> -if [ "$DPDK" ] || [ "$DPDK_SHARED" ]; then
> +if [ "$DPDK" ]; then
>      if [ -z "$DPDK_VER" ]; then
>          DPDK_VER="20.11"
>      fi
> @@ -208,6 +211,9 @@ if [ "$DPDK" ] || [ "$DPDK_SHARED" ]; then
>          # Disregard cast alignment errors until DPDK is fixed
>          CFLAGS_FOR_OVS="${CFLAGS_FOR_OVS} -Wno-cast-align"
>      fi
> +    if [ -n "$DPDK_EXPERIMENTAL" ]; then
> +        CFLAGS_FOR_OVS="${CFLAGS_FOR_OVS} -DALLOW_EXPERIMENTAL_API"
> +    fi
>  fi
>  
>  if [ "$CC" = "clang" ]; then
> diff --git a/.github/workflows/build-and-test.yml 
> b/.github/workflows/build-and-test.yml
> index ce98a9f98f..649b1405d2 100644
> --- a/.github/workflows/build-and-test.yml
> +++ b/.github/workflows/build-and-test.yml
> @@ -17,6 +17,7 @@ jobs:
>        DEB_PACKAGE: ${{ matrix.deb_package }}
>        DPDK:        ${{ matrix.dpdk }}
>        DPDK_SHARED: ${{ matrix.dpdk_shared }}
> +      DPDK_EXPERIMENTAL: ${{ matrix.dpdk_experimental }}
>        KERNEL:      ${{ matrix.kernel }}
>        KERNEL_LIST: ${{ matrix.kernel_list }}
>        LIBS:        ${{ matrix.libs }}
> @@ -102,6 +103,9 @@ jobs:
>              dpdk_shared:  dpdk-shared
>              opts:         --enable-shared
>  
> +          - compiler:     gcc
> +            dpdk_shared:  dpdk-experimental
> +
>            - compiler:     gcc
>              m32:          m32
>              opts:         --disable-ssl
> @@ -124,7 +128,7 @@ jobs:
>          python-version: '3.x'
>  
>      - name: create ci signature file for the dpdk cache key
> -      if:   matrix.dpdk != '' || matrix.dpdk_shared != ''
> +      if:   matrix.dpdk != '' || matrix.dpdk_shared != '' || 
> matrix.dpdk_experimental != ''
>        # This will collect most of DPDK related lines, so hash will be 
> different
>        # if something changed in a way we're building DPDK including DPDK_VER.
>        # This also allows us to use cache from any branch as long as version
> @@ -134,10 +138,10 @@ jobs:
>          cat dpdk-ci-signature
>  
>      - name: cache
> -      if:   matrix.dpdk != '' || matrix.dpdk_shared != ''
> +      if:   matrix.dpdk != '' || matrix.dpdk_shared != '' || 
> matrix.dpdk_experimental != ''
>        uses: actions/cache@v2
>        env:
> -        matrix_key: ${{ matrix.dpdk }}${{ matrix.dpdk_shared }}
> +        matrix_key: ${{ matrix.dpdk }}${{ matrix.dpdk_shared }}${{ 
> matrix.dpdk_experimental}}

minor, but fyi checkpatch is complaining about these long lines:

WARNING: Line is 91 characters long (recommended limit is 79)
#64 FILE: .github/workflows/build-and-test.yml:131:
      if:   matrix.dpdk != '' || matrix.dpdk_shared != '' ||
matrix.dpdk_experimental != ''

WARNING: Line is 91 characters long (recommended limit is 79)
#71 FILE: .github/workflows/build-and-test.yml:141:
      if:   matrix.dpdk != '' || matrix.dpdk_shared != '' ||
matrix.dpdk_experimental != ''

WARNING: Line is 93 characters long (recommended limit is 79)
#75 FILE: .github/workflows/build-and-test.yml:144:
        matrix_key: ${{ matrix.dpdk }}${{ matrix.dpdk_shared }}${{
matrix.dpdk_experimental}}


>          ci_key:     ${{ hashFiles('dpdk-ci-signature') }}
>        with:
>          path: dpdk-dir
> diff --git a/.travis.yml b/.travis.yml
> index 7e87360256..7f4d5d99a3 100644
> --- a/.travis.yml
> +++ b/.travis.yml
> @@ -39,6 +39,9 @@ matrix:
>      - arch: arm64
>        compiler: gcc
>        env: TESTSUITE=1 DPDK=1
> +    - arch: arm64
> +      compiler: gcc
> +      env: DPDK_EXPERIMENTAL=1
>      - arch: arm64
>        compiler: gcc
>        env: KERNEL_LIST="5.5 4.19"
> 

_______________________________________________
dev mailing list
[email protected]
https://mail.openvswitch.org/mailman/listinfo/ovs-dev

Reply via email to