On 6/11/2019 6:13 PM, David Marchand wrote:
On Tue, Jun 11, 2019 at 5:32 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. Config modifications changed to update
generated build/.config instead of changing sources.
Signed-off-by: Ilya Maximets <[email protected]
<mailto:[email protected]>>
---
Version 2:
* Removed -Wno-error=inline.
* config/common_base --> build/.config
.travis.yml | 8 ++++----
.travis/linux-build.sh | 25 +++++++++++++------------
2 files changed, 17 insertions(+), 16 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..b88bfb53e 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,16 +74,21 @@ 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 <http://rte.vars.mk>
+
+ make config CC=gcc T=$TARGET
+
if [ "$DPDK_SHARED" ]; then
- sed -i '/CONFIG_RTE_BUILD_SHARED_LIB=n/s/=n/=y/'
config/common_base
+ sed -i '/CONFIG_RTE_BUILD_SHARED_LIB=n/s/=n/=y/' build/.config
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$(pwd)/$TARGET/lib
fi
- make config CC=gcc T=$TARGET
- make -j4 CC=gcc RTE_KERNELDIR=$KERNELSRC
+
+ # Disable building DPDK kernel modules. Not needed for OVS
build or tests.
+ sed -i '/CONFIG_RTE_EAL_IGB_UIO=y/s/=y/=n/' build/.config
+ sed -i '/CONFIG_RTE_KNI_KMOD=y/s/=y/=n/' build/.config
We could also disable the librte_kni but we are fine with just disabling
the kmods.
+
+ make -j4 CC=gcc
echo "Installed DPDK source in $(pwd)"
cd ..
}
@@ -97,7 +98,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 +142,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
Reviewed-by: David Marchand <[email protected]
<mailto:[email protected]>>
Tested-by: David Marchand <[email protected]
<mailto:[email protected]>>
--
David Marchand
Thanks all, LGTM, pushed to master.
Regards
Ian
_______________________________________________
dev mailing list
[email protected]
https://mail.openvswitch.org/mailman/listinfo/ovs-dev