Re: [ovs-dev] [PATCH] travis: Don't install kernel for DPDK checks.

2019-06-11 Thread Ilya Maximets
On 11.06.2019 16:49, David Marchand wrote:
> 
> 
> On Tue, Jun 11, 2019 at 3:31 PM Ilya Maximets  > wrote:
> 
> We don't need to build DPDK kernel modules to test build with OVS.
> And we don't need to build OVS datapath modules for checking
> userspace with DPDK.
> 
> Removed 'max-inline-insns-single' changes that only was needed for
> DPDK kernel modules.
> 
> Signed-off-by: Ilya Maximets  >
> ---
>  .travis.yml            |  8 
>  .travis/linux-build.sh | 18 +-
>  2 files changed, 13 insertions(+), 13 deletions(-)
> 
> diff --git a/.travis.yml b/.travis.yml
> index 6621fb535..7addcb231 100644
> --- a/.travis.yml
> +++ b/.travis.yml
> @@ -31,10 +31,10 @@ env:
>    - TESTSUITE=1 KERNEL=3.16
>    - TESTSUITE=1 OPTS="--enable-shared"
>    - BUILD_ENV="-m32" OPTS="--disable-ssl"
> -  - KERNEL=3.16 DPDK=1 OPTS="--enable-shared"
> -  - KERNEL=3.16 TESTSUITE=1 DPDK=1
> -  - KERNEL=3.16 DPDK_SHARED=1
> -  - KERNEL=3.16 DPDK_SHARED=1 OPTS="--enable-shared"
> +  - DPDK=1 OPTS="--enable-shared"
> +  - TESTSUITE=1 DPDK=1
> +  - DPDK_SHARED=1
> +  - DPDK_SHARED=1 OPTS="--enable-shared"
>    - KERNEL=4.20
>    - KERNEL=4.19
>    - KERNEL=4.18
> diff --git a/.travis/linux-build.sh b/.travis/linux-build.sh
> index 123cde575..8c0291dd2 100755
> --- a/.travis/linux-build.sh
> +++ b/.travis/linux-build.sh
> @@ -3,7 +3,6 @@
>  set -o errexit
>  set -x
> 
> -KERNELSRC=""
>  CFLAGS=""
>  SPARSE_FLAGS=""
>  EXTRA_OPTS="--enable-Werror"
> @@ -57,10 +56,7 @@ function install_kernel()
>          make net/bridge/
>      fi
> 
> -    KERNELSRC=$(pwd)
> -    if [ ! "$DPDK" ] && [ ! "$DPDK_SHARED" ]; then
> -        EXTRA_OPTS="${EXTRA_OPTS} --with-linux=$(pwd)"
> -    fi
> 
> +    EXTRA_OPTS="${EXTRA_OPTS} --with-linux=$(pwd)"
>      echo "Installed kernel source in $(pwd)"
>      cd ..
>  }
> @@ -78,7 +74,6 @@ function install_dpdk()
>          if [ $DIR_NAME != "dpdk-$1"  ]; then mv $DIR_NAME dpdk-$1; fi
>          cd dpdk-$1
>      fi
> -    find ./ -type f | xargs sed -i 
> 's/max-inline-insns-single=100/max-inline-insns-single=400/'
>      find ./ -type f | xargs sed -i 's/-Werror/-Werror -Wno-error=inline/'
> 
> 
> Both lines go together (else, that would mean that dpdk does not build fine 
> by itself).
> So you should remove both of them.

Indeed. Thanks.

> 
> 
> 
>      echo 'CONFIG_RTE_BUILD_FPIC=y' >>config/common_linuxapp
>      sed -ri '/EXECENV_CFLAGS  = -pthread -fPIC/{s/$/\nelse ifeq 
> ($(CONFIG_RTE_BUILD_FPIC),y)/;s/$/\nEXECENV_CFLAGS  = -pthread -fPIC/}' 
> mk/exec-env/linuxapp/rte.vars.mk 
> 
> @@ -86,8 +81,13 @@ function install_dpdk()
>          sed -i '/CONFIG_RTE_BUILD_SHARED_LIB=n/s/=n/=y/' 
> config/common_base
>          export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$(pwd)/$TARGET/lib
>      fi
> +
> +    # Disable building DPDK kernel modules. Not needed for OVS build or 
> tests.
> +    sed -i '/CONFIG_RTE_EAL_IGB_UIO=y/s/=y/=n/' config/common_linuxapp
> +    sed -i '/CONFIG_RTE_KNI_KMOD=y/s/=y/=n/' config/common_linuxapp
> +
> 
> 
> Patching the dpdk sources feels quite dangerous to me.
> And it is broken on dpdk master since this file has been renamed.
> 
> How about editing build/.config after calling 'make config' instead ?
> 
> I did like this, to compile against dpdk master:
> https://github.com/david-marchand/ovs/commit/e3c7877aa76247cb06f8c2832f99230a6d8e8675

Sure. This will be cleaner.

BTW, you may send fPIC related part of your change as a separate patch
for current master. It looks much better to pass it via EXTRA_CFLAGS.

> 
> 
>      make config CC=gcc T=$TARGET
> -    make -j4 CC=gcc RTE_KERNELDIR=$KERNELSRC
> +    make -j4 CC=gcc
>      echo "Installed DPDK source in $(pwd)"
>      cd ..
>  }
> @@ -97,7 +97,7 @@ function configure_ovs()
>      ./boot.sh && ./configure $* || { cat config.log; exit 1; }
>  }
> 
> -if [ "$KERNEL" ] || [ "$DPDK" ] || [ "$DPDK_SHARED" ]; then
> +if [ "$KERNEL" ]; then
>      install_kernel $KERNEL
>  fi
> 
> @@ -141,7 +141,7 @@ else
>      make selinux-policy
> 
>      # Only build datapath if we are testing kernel w/o running testsuite
> -    if [ "$KERNEL" ] && [ ! "$DPDK" ] && [ ! "$DPDK_SHARED" ]; then
> +    if [ "$KERNEL" ]; then
>          cd datapath
>      fi
>      make -j4
> -- 
> 2.17.1
> 
> 
> 
> -- 
> David Marchand
___
dev mailing list
d...@openvswitch.org
https://mail.openvswitch.org/mailman/listinfo/ovs-dev


Re: [ovs-dev] [PATCH] travis: Don't install kernel for DPDK checks.

2019-06-11 Thread David Marchand
On Tue, Jun 11, 2019 at 3:31 PM Ilya Maximets 
wrote:

> We don't need to build DPDK kernel modules to test build with OVS.
> And we don't need to build OVS datapath modules for checking
> userspace with DPDK.
>
> Removed 'max-inline-insns-single' changes that only was needed for
> DPDK kernel modules.
>
> Signed-off-by: Ilya Maximets 
> ---
>  .travis.yml|  8 
>  .travis/linux-build.sh | 18 +-
>  2 files changed, 13 insertions(+), 13 deletions(-)
>
> diff --git a/.travis.yml b/.travis.yml
> index 6621fb535..7addcb231 100644
> --- a/.travis.yml
> +++ b/.travis.yml
> @@ -31,10 +31,10 @@ env:
>- TESTSUITE=1 KERNEL=3.16
>- TESTSUITE=1 OPTS="--enable-shared"
>- BUILD_ENV="-m32" OPTS="--disable-ssl"
> -  - KERNEL=3.16 DPDK=1 OPTS="--enable-shared"
> -  - KERNEL=3.16 TESTSUITE=1 DPDK=1
> -  - KERNEL=3.16 DPDK_SHARED=1
> -  - KERNEL=3.16 DPDK_SHARED=1 OPTS="--enable-shared"
> +  - DPDK=1 OPTS="--enable-shared"
> +  - TESTSUITE=1 DPDK=1
> +  - DPDK_SHARED=1
> +  - DPDK_SHARED=1 OPTS="--enable-shared"
>- KERNEL=4.20
>- KERNEL=4.19
>- KERNEL=4.18
> diff --git a/.travis/linux-build.sh b/.travis/linux-build.sh
> index 123cde575..8c0291dd2 100755
> --- a/.travis/linux-build.sh
> +++ b/.travis/linux-build.sh
> @@ -3,7 +3,6 @@
>  set -o errexit
>  set -x
>
> -KERNELSRC=""
>  CFLAGS=""
>  SPARSE_FLAGS=""
>  EXTRA_OPTS="--enable-Werror"
> @@ -57,10 +56,7 @@ function install_kernel()
>  make net/bridge/
>  fi
>
> -KERNELSRC=$(pwd)
> -if [ ! "$DPDK" ] && [ ! "$DPDK_SHARED" ]; then
> -EXTRA_OPTS="${EXTRA_OPTS} --with-linux=$(pwd)"
> -fi
>
+EXTRA_OPTS="${EXTRA_OPTS} --with-linux=$(pwd)"
>  echo "Installed kernel source in $(pwd)"
>  cd ..
>  }
> @@ -78,7 +74,6 @@ function install_dpdk()
>  if [ $DIR_NAME != "dpdk-$1"  ]; then mv $DIR_NAME dpdk-$1; fi
>  cd dpdk-$1
>  fi
> -find ./ -type f | xargs sed -i
> 's/max-inline-insns-single=100/max-inline-insns-single=400/'
>  find ./ -type f | xargs sed -i 's/-Werror/-Werror -Wno-error=inline/'
>

Both lines go together (else, that would mean that dpdk does not build fine
by itself).
So you should remove both of them.



 echo 'CONFIG_RTE_BUILD_FPIC=y' >>config/common_linuxapp
>  sed -ri '/EXECENV_CFLAGS  = -pthread -fPIC/{s/$/\nelse ifeq
> ($(CONFIG_RTE_BUILD_FPIC),y)/;s/$/\nEXECENV_CFLAGS  = -pthread -fPIC/}'
> mk/exec-env/linuxapp/rte.vars.mk
> @@ -86,8 +81,13 @@ function install_dpdk()
>  sed -i '/CONFIG_RTE_BUILD_SHARED_LIB=n/s/=n/=y/'
> config/common_base
>  export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$(pwd)/$TARGET/lib
>  fi
> +
> +# Disable building DPDK kernel modules. Not needed for OVS build or
> tests.
> +sed -i '/CONFIG_RTE_EAL_IGB_UIO=y/s/=y/=n/' config/common_linuxapp
> +sed -i '/CONFIG_RTE_KNI_KMOD=y/s/=y/=n/' config/common_linuxapp
> +
>

Patching the dpdk sources feels quite dangerous to me.
And it is broken on dpdk master since this file has been renamed.

How about editing build/.config after calling 'make config' instead ?

I did like this, to compile against dpdk master:
https://github.com/david-marchand/ovs/commit/e3c7877aa76247cb06f8c2832f99230a6d8e8675


 make config CC=gcc T=$TARGET
> -make -j4 CC=gcc RTE_KERNELDIR=$KERNELSRC
> +make -j4 CC=gcc
>  echo "Installed DPDK source in $(pwd)"
>  cd ..
>  }
> @@ -97,7 +97,7 @@ function configure_ovs()
>  ./boot.sh && ./configure $* || { cat config.log; exit 1; }
>  }
>
> -if [ "$KERNEL" ] || [ "$DPDK" ] || [ "$DPDK_SHARED" ]; then
> +if [ "$KERNEL" ]; then
>  install_kernel $KERNEL
>  fi
>
> @@ -141,7 +141,7 @@ else
>  make selinux-policy
>
>  # Only build datapath if we are testing kernel w/o running testsuite
> -if [ "$KERNEL" ] && [ ! "$DPDK" ] && [ ! "$DPDK_SHARED" ]; then
> +if [ "$KERNEL" ]; then
>  cd datapath
>  fi
>  make -j4
> --
> 2.17.1
>
>

-- 
David Marchand
___
dev mailing list
d...@openvswitch.org
https://mail.openvswitch.org/mailman/listinfo/ovs-dev


[ovs-dev] [PATCH] travis: Don't install kernel for DPDK checks.

2019-06-11 Thread Ilya Maximets
We don't need to build DPDK kernel modules to test build with OVS.
And we don't need to build OVS datapath modules for checking
userspace with DPDK.

Removed 'max-inline-insns-single' changes that only was needed for
DPDK kernel modules.

Signed-off-by: Ilya Maximets 
---
 .travis.yml|  8 
 .travis/linux-build.sh | 18 +-
 2 files changed, 13 insertions(+), 13 deletions(-)

diff --git a/.travis.yml b/.travis.yml
index 6621fb535..7addcb231 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -31,10 +31,10 @@ env:
   - TESTSUITE=1 KERNEL=3.16
   - TESTSUITE=1 OPTS="--enable-shared"
   - BUILD_ENV="-m32" OPTS="--disable-ssl"
-  - KERNEL=3.16 DPDK=1 OPTS="--enable-shared"
-  - KERNEL=3.16 TESTSUITE=1 DPDK=1
-  - KERNEL=3.16 DPDK_SHARED=1
-  - KERNEL=3.16 DPDK_SHARED=1 OPTS="--enable-shared"
+  - DPDK=1 OPTS="--enable-shared"
+  - TESTSUITE=1 DPDK=1
+  - DPDK_SHARED=1
+  - DPDK_SHARED=1 OPTS="--enable-shared"
   - KERNEL=4.20
   - KERNEL=4.19
   - KERNEL=4.18
diff --git a/.travis/linux-build.sh b/.travis/linux-build.sh
index 123cde575..8c0291dd2 100755
--- a/.travis/linux-build.sh
+++ b/.travis/linux-build.sh
@@ -3,7 +3,6 @@
 set -o errexit
 set -x
 
-KERNELSRC=""
 CFLAGS=""
 SPARSE_FLAGS=""
 EXTRA_OPTS="--enable-Werror"
@@ -57,10 +56,7 @@ function install_kernel()
 make net/bridge/
 fi
 
-KERNELSRC=$(pwd)
-if [ ! "$DPDK" ] && [ ! "$DPDK_SHARED" ]; then
-EXTRA_OPTS="${EXTRA_OPTS} --with-linux=$(pwd)"
-fi
+EXTRA_OPTS="${EXTRA_OPTS} --with-linux=$(pwd)"
 echo "Installed kernel source in $(pwd)"
 cd ..
 }
@@ -78,7 +74,6 @@ function install_dpdk()
 if [ $DIR_NAME != "dpdk-$1"  ]; then mv $DIR_NAME dpdk-$1; fi
 cd dpdk-$1
 fi
-find ./ -type f | xargs sed -i 
's/max-inline-insns-single=100/max-inline-insns-single=400/'
 find ./ -type f | xargs sed -i 's/-Werror/-Werror -Wno-error=inline/'
 echo 'CONFIG_RTE_BUILD_FPIC=y' >>config/common_linuxapp
 sed -ri '/EXECENV_CFLAGS  = -pthread -fPIC/{s/$/\nelse ifeq 
($(CONFIG_RTE_BUILD_FPIC),y)/;s/$/\nEXECENV_CFLAGS  = -pthread -fPIC/}' 
mk/exec-env/linuxapp/rte.vars.mk
@@ -86,8 +81,13 @@ function install_dpdk()
 sed -i '/CONFIG_RTE_BUILD_SHARED_LIB=n/s/=n/=y/' config/common_base
 export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$(pwd)/$TARGET/lib
 fi
+
+# Disable building DPDK kernel modules. Not needed for OVS build or tests.
+sed -i '/CONFIG_RTE_EAL_IGB_UIO=y/s/=y/=n/' config/common_linuxapp
+sed -i '/CONFIG_RTE_KNI_KMOD=y/s/=y/=n/' config/common_linuxapp
+
 make config CC=gcc T=$TARGET
-make -j4 CC=gcc RTE_KERNELDIR=$KERNELSRC
+make -j4 CC=gcc
 echo "Installed DPDK source in $(pwd)"
 cd ..
 }
@@ -97,7 +97,7 @@ function configure_ovs()
 ./boot.sh && ./configure $* || { cat config.log; exit 1; }
 }
 
-if [ "$KERNEL" ] || [ "$DPDK" ] || [ "$DPDK_SHARED" ]; then
+if [ "$KERNEL" ]; then
 install_kernel $KERNEL
 fi
 
@@ -141,7 +141,7 @@ else
 make selinux-policy
 
 # Only build datapath if we are testing kernel w/o running testsuite
-if [ "$KERNEL" ] && [ ! "$DPDK" ] && [ ! "$DPDK_SHARED" ]; then
+if [ "$KERNEL" ]; then
 cd datapath
 fi
 make -j4
-- 
2.17.1

___
dev mailing list
d...@openvswitch.org
https://mail.openvswitch.org/mailman/listinfo/ovs-dev