Message ID | 20201125145753.534447-2-i.maximets@ovn.org |
---|---|
State | Accepted |
Headers | show |
Series | GitHub Actions integration and Travis CI update. | expand |
On 25/11/2020 14:57, Ilya Maximets wrote: > It's possible that actual HW where CI is running is slightly different > between jobs. That makes all unit tests to fail with cached DPDK > builds due to 'Illegal instruction' crashes. Changing machine > type to 'default' to generate binaries as generic as possible and avoid > this kind of issues. > > Fixes: 7654a3ed0b38 ("travis: Cache DPDK build.") > Signed-off-by: Ilya Maximets <i.maximets@ovn.org> > --- > .travis/linux-build.sh | 4 ++++ > 1 file changed, 4 insertions(+) > > diff --git a/.travis/linux-build.sh b/.travis/linux-build.sh > index 60d8931f3..16102ac94 100755 > --- a/.travis/linux-build.sh > +++ b/.travis/linux-build.sh > @@ -135,6 +135,10 @@ function install_dpdk() > 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 > > + # Switching to 'default' machine to make dpdk-dir cache usable on different > + # CPUs. We can't be sure that all CI machines are exactly same. > + sed -i '/CONFIG_RTE_MACHINE="native"/s/="native"/="default"/' build/.config > + > make -j4 CC=gcc EXTRA_CFLAGS='-fPIC' > EXTRA_OPTS="$EXTRA_OPTS --with-dpdk=$(pwd)/build" > echo "Installed DPDK source in $(pwd)" > LGTM Acked-by: Kevin Traynor <ktraynor@redhat.com>
On 11/25/20 7:41 PM, Kevin Traynor wrote: > On 25/11/2020 14:57, Ilya Maximets wrote: >> It's possible that actual HW where CI is running is slightly different >> between jobs. That makes all unit tests to fail with cached DPDK >> builds due to 'Illegal instruction' crashes. Changing machine >> type to 'default' to generate binaries as generic as possible and avoid >> this kind of issues. >> >> Fixes: 7654a3ed0b38 ("travis: Cache DPDK build.") >> Signed-off-by: Ilya Maximets <i.maximets@ovn.org> >> --- >> .travis/linux-build.sh | 4 ++++ >> 1 file changed, 4 insertions(+) >> >> diff --git a/.travis/linux-build.sh b/.travis/linux-build.sh >> index 60d8931f3..16102ac94 100755 >> --- a/.travis/linux-build.sh >> +++ b/.travis/linux-build.sh >> @@ -135,6 +135,10 @@ function install_dpdk() >> 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 >> >> + # Switching to 'default' machine to make dpdk-dir cache usable on different >> + # CPUs. We can't be sure that all CI machines are exactly same. >> + sed -i '/CONFIG_RTE_MACHINE="native"/s/="native"/="default"/' build/.config >> + >> make -j4 CC=gcc EXTRA_CFLAGS='-fPIC' >> EXTRA_OPTS="$EXTRA_OPTS --with-dpdk=$(pwd)/build" >> echo "Installed DPDK source in $(pwd)" >> > > LGTM > Acked-by: Kevin Traynor <ktraynor@redhat.com> > Thanks, Kevin and Simon. I applied this one patch to master and backported down to 2.13. Best regards, Ilya Maximets.
diff --git a/.travis/linux-build.sh b/.travis/linux-build.sh index 60d8931f3..16102ac94 100755 --- a/.travis/linux-build.sh +++ b/.travis/linux-build.sh @@ -135,6 +135,10 @@ function install_dpdk() 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 + # Switching to 'default' machine to make dpdk-dir cache usable on different + # CPUs. We can't be sure that all CI machines are exactly same. + sed -i '/CONFIG_RTE_MACHINE="native"/s/="native"/="default"/' build/.config + make -j4 CC=gcc EXTRA_CFLAGS='-fPIC' EXTRA_OPTS="$EXTRA_OPTS --with-dpdk=$(pwd)/build" echo "Installed DPDK source in $(pwd)"
It's possible that actual HW where CI is running is slightly different between jobs. That makes all unit tests to fail with cached DPDK builds due to 'Illegal instruction' crashes. Changing machine type to 'default' to generate binaries as generic as possible and avoid this kind of issues. Fixes: 7654a3ed0b38 ("travis: Cache DPDK build.") Signed-off-by: Ilya Maximets <i.maximets@ovn.org> --- .travis/linux-build.sh | 4 ++++ 1 file changed, 4 insertions(+)