On 11.06.2019 16:49, David Marchand wrote:
>
>
> On Tue, Jun 11, 2019 at 3:31 PM Ilya Maximets <[email protected]
> <mailto:[email protected]>> 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 <[email protected]
> <mailto:[email protected]>>
> ---
> .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
> <https://protect2.fireeye.com/url?k=e07b9b31a8b7192a.e07a107e-7946afdd48aedc58&u=http://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
[email protected]
https://mail.openvswitch.org/mailman/listinfo/ovs-dev