From patchwork Thu Mar 19 06:03:53 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Lance Yang X-Patchwork-Id: 1258111 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=pass (sender SPF authorized) smtp.mailfrom=openvswitch.org (client-ip=140.211.166.138; helo=whitealder.osuosl.org; envelope-from=ovs-dev-bounces@openvswitch.org; receiver=) Authentication-Results: ozlabs.org; dmarc=none (p=none dis=none) header.from=arm.com Received: from whitealder.osuosl.org (smtp1.osuosl.org [140.211.166.138]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 48jkMp18Wdz9sSL for ; Thu, 19 Mar 2020 21:55:33 +1100 (AEDT) Received: from localhost (localhost [127.0.0.1]) by whitealder.osuosl.org (Postfix) with ESMTP id 2A18487D5C; Thu, 19 Mar 2020 10:55:32 +0000 (UTC) X-Virus-Scanned: amavisd-new at osuosl.org Received: from whitealder.osuosl.org ([127.0.0.1]) by localhost (.osuosl.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id IZ+Pr+urxBus; Thu, 19 Mar 2020 10:55:30 +0000 (UTC) Received: from lists.linuxfoundation.org (lf-lists.osuosl.org [140.211.9.56]) by whitealder.osuosl.org (Postfix) with ESMTP id 2492987C5B; Thu, 19 Mar 2020 10:55:30 +0000 (UTC) Received: from lf-lists.osuosl.org (localhost [127.0.0.1]) by lists.linuxfoundation.org (Postfix) with ESMTP id 16024C1830; Thu, 19 Mar 2020 10:55:30 +0000 (UTC) X-Original-To: dev@openvswitch.org Delivered-To: ovs-dev@lists.linuxfoundation.org Received: from hemlock.osuosl.org (smtp2.osuosl.org [140.211.166.133]) by lists.linuxfoundation.org (Postfix) with ESMTP id A6B8FC07FF for ; Thu, 19 Mar 2020 10:55:28 +0000 (UTC) Received: from localhost (localhost [127.0.0.1]) by hemlock.osuosl.org (Postfix) with ESMTP id 9A43A88355 for ; Thu, 19 Mar 2020 10:55:28 +0000 (UTC) X-Virus-Scanned: amavisd-new at osuosl.org Received: from hemlock.osuosl.org ([127.0.0.1]) by localhost (.osuosl.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id Gwma+cQ+SuCg for ; Thu, 19 Mar 2020 10:55:27 +0000 (UTC) X-Greylist: domain auto-whitelisted by SQLgrey-1.7.6 Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by hemlock.osuosl.org (Postfix) with ESMTP id 23FB987D28 for ; Thu, 19 Mar 2020 10:55:27 +0000 (UTC) Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 85DF5FEC; Thu, 19 Mar 2020 03:55:26 -0700 (PDT) Received: from nfv-demo01.shanghai.arm.com (unknown [10.169.41.196]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPA id B77A33F52E; Wed, 18 Mar 2020 23:08:29 -0700 (PDT) From: Lance Yang To: dev@openvswitch.org Date: Thu, 19 Mar 2020 14:03:53 +0800 Message-Id: <1584597833-20493-1-git-send-email-Lance.Yang@arm.com> X-Mailer: git-send-email 2.7.4 Cc: Gavin.Hu@arm.com, i.maximets@ovn.org, JingZhao.Ni@arm.com, nd@arm.com, Ruifeng.Wang@arm.com Subject: [ovs-dev] [ovs-dev,v3]travis: Enable OvS Travis CI for arm. X-BeenThere: ovs-dev@openvswitch.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , MIME-Version: 1.0 Errors-To: ovs-dev-bounces@openvswitch.org Sender: "dev" Enable part of travis jobs with gcc compiler for arm64 architecture 1. Add arm jobs into the matrix in .travis.yml configuration file 2. To enable OVS-DPDK jobs, set the build target according to different CPU architectures 3. Temporarily disable sparse checker because of static code checking failure on arm64 Considering the balance of the CI coverage and running time, some kernel and DPDK jobs are removed from Arm CI. The running time increases around by 7 minutes to 47 minutes in all. Successful travis build jobs report: https://travis-ci.org/github/yzyuestc/ovs/builds/663833478 Reviewed-by: Yanqin Wei Reviewed-by: Ruifeng Wang Reviewed-by: JingZhao Ni Reviewed-by: Gavin Hu Signed-off-by: Lance Yang --- v3: - Remove some kernel jobs: 4.18, 4.17, 4.16, 4.15, 4.14, and 4.3. - Remove one OvS-DPDK shared library job. --- .travis.yml | 15 +++++++++++++++ .travis/linux-build.sh | 16 ++++++++++++++-- 2 files changed, 29 insertions(+), 2 deletions(-) diff --git a/.travis.yml b/.travis.yml index ef9f867..1149758 100644 --- a/.travis.yml +++ b/.travis.yml @@ -51,6 +51,21 @@ matrix: - os: osx compiler: clang env: OPTS="--disable-ssl" + - arch: arm64 + compiler: gcc + env: OPTS="--disable-ssl" + - arch: arm64 + compiler: gcc + env: KERNEL_LIST="5.5 4.19" + - arch: arm64 + compiler: gcc + env: KERNEL_LIST="4.9 3.16" + - arch: arm64 + compiler: gcc + env: DPDK=1 OPTS="--enable-shared" + - arch: arm64 + compiler: gcc + env: DPDK_SHARED=1 script: ./.travis/${TRAVIS_OS_NAME}-build.sh $OPTS diff --git a/.travis/linux-build.sh b/.travis/linux-build.sh index 359f777..3140ec9 100755 --- a/.travis/linux-build.sh +++ b/.travis/linux-build.sh @@ -6,7 +6,7 @@ set -x CFLAGS_FOR_OVS="-g -O2" SPARSE_FLAGS="" EXTRA_OPTS="--enable-Werror" -TARGET="x86_64-native-linuxapp-gcc" +TARGET="" function install_kernel() { @@ -87,6 +87,16 @@ function install_dpdk() local DPDK_VER=$1 local VERSION_FILE="dpdk-dir/travis-dpdk-cache-version" + if [ -z "$TRAVIS_ARCH" ] || + [ "$TRAVIS_ARCH" == "amd64" ]; then + TARGET="x86_64-native-linuxapp-gcc" + elif [ "$TRAVIS_ARCH" == "aarch64" ]; then + TARGET="arm64-armv8a-linuxapp-gcc" + else + echo "Target is unknown" + exit 1 + fi + if [ "${DPDK_VER##refs/*/}" != "${DPDK_VER}" ]; then # Avoid using cache for git tree build. rm -rf dpdk-dir @@ -178,7 +188,9 @@ elif [ "$M32" ]; then # difference on 'configure' and 'make' stages. export CC="$CC -m32" else - OPTS="--enable-sparse" + if [ "$TRAVIS_ARCH" != "aarch64" ]; then + OPTS="--enable-sparse" + fi if [ "$AFXDP" ]; then # netdev-afxdp uses memset for 64M for umem initialization. SPARSE_FLAGS="${SPARSE_FLAGS} -Wno-memcpy-max-count"