From nobody Fri Nov 29 16:36:29 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of lists.xenproject.org designates 192.237.175.120 as permitted sender) client-ip=192.237.175.120; envelope-from=xen-devel-bounces@lists.xenproject.org; helo=lists.xenproject.org; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of lists.xenproject.org designates 192.237.175.120 as permitted sender) smtp.mailfrom=xen-devel-bounces@lists.xenproject.org; dmarc=pass(p=none dis=none) header.from=kernel.org ARC-Seal: i=1; a=rsa-sha256; t=1634857872; cv=none; d=zohomail.com; s=zohoarc; b=MtcrrLceWEhVmxo2e1Q6H6ISuqtaJnb3IORrelkLR1hwpWgMLN9Sk1z46uuM1iSfge1kKpNfbqGUme5WJcF3MFqrYWrFOI7zzWjAwlGypXTkK0wm393vM2SsvzI6R3TwGeZesh5nE2RzlE6T3aFtGRGlGsYE2s5dtuLPUvEQ5fs= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1634857872; h=Cc:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Help:List-Unsubscribe:Message-ID:References:Sender:Subject:To; bh=+V75xWj7gcDeVnQT8JHVyKIsimaOcDUEaqeD6PyIjFw=; b=N+5/WHLeamOetiWt92Pz1i5WVKzBIcVfUwCEL9lzSmcI2D0ZjwEphrDe1zBkRsjfRhNLLuDSPs2l91x99q7fOMwV+2kAo5IadmCQLkVKsd1aFuM4F1rX9W66NrcJizubV3+JxpCn8vie5w4KMsmGz2ONB8ZYuF8Yf8aKejIkYZI= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of lists.xenproject.org designates 192.237.175.120 as permitted sender) smtp.mailfrom=xen-devel-bounces@lists.xenproject.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.xenproject.org (lists.xenproject.org [192.237.175.120]) by mx.zohomail.com with SMTPS id 1634857872276419.03484214146897; Thu, 21 Oct 2021 16:11:12 -0700 (PDT) Received: from list by lists.xenproject.org with outflank-mailman.214625.373264 (Exim 4.92) (envelope-from ) id 1mdhD8-00088U-9I; Thu, 21 Oct 2021 23:10:58 +0000 Received: by outflank-mailman (output) from mailman id 214625.373264; Thu, 21 Oct 2021 23:10:58 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1mdhD8-00088E-6A; Thu, 21 Oct 2021 23:10:58 +0000 Received: by outflank-mailman (input) for mailman id 214625; Thu, 21 Oct 2021 23:10:56 +0000 Received: from us1-rack-iad1.inumbo.com ([172.99.69.81]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1mdhD6-0007Xm-O5 for xen-devel@lists.xenproject.org; Thu, 21 Oct 2021 23:10:56 +0000 Received: from mail.kernel.org (unknown [198.145.29.99]) by us1-rack-iad1.inumbo.com (Halon) with ESMTPS id c94a67ca-c12f-450b-964a-6adb2a594ca5; Thu, 21 Oct 2021 23:10:52 +0000 (UTC) Received: by mail.kernel.org (Postfix) with ESMTPSA id 54A6561373; Thu, 21 Oct 2021 23:10:51 +0000 (UTC) X-Outflank-Mailman: Message body and most headers restored to incoming version X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: c94a67ca-c12f-450b-964a-6adb2a594ca5 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1634857851; bh=YswbYpMZWjEYIwFrC7BrzOxPcxKPcBIQvyXpCeVmPQA=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=q9hclV/CKlksJd4GBd67fnd34oGL+eafXlZ6ngGV3UNBZXAe6kI5Ngm0IbtL42d7o ej2k/qoOnFC3tlWiweDe138r+PXxiiaFvC8hNN+GtvNFoIkjBBJ2Ypqyhhr5mpT4c7 FnKFMVav+hH72/iLbN2IlkSidEZNgQyPZEzxi1tPfAgshwHbhs8iRS9ZyRBK8oN5L4 TKyKn4s0gSK1gl3nyQr0v6PRpOOAgV0dDUB2pS2ZwEOMFi+FRUyZgbpIEbtyvpAxkX GI/Nw8eMwgq0znpv2WPm/ZXlCud9OiuJs6u73g+ZW/kGrrYZjSzHz7DKroWZvKSmx5 xIQsUCKFIt0Dg== From: Stefano Stabellini To: xen-devel@lists.xenproject.org Cc: sstabellini@kernel.org, iwj@xenproject.org, cardoe@cardoe.com, wl@xen.org, andrew.cooper3@citrix.com, anthony.perard@citrix.com, Stefano Stabellini Subject: [PATCH 3/3] automation: add a QEMU based x86_64 Dom0/DomU test Date: Thu, 21 Oct 2021 16:08:39 -0700 Message-Id: <20211021230839.10794-3-sstabellini@kernel.org> X-Mailer: git-send-email 2.17.1 In-Reply-To: References: X-ZohoMail-DKIM: pass (identity @kernel.org) X-ZM-MESSAGEID: 1634857874357100001 Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" From: Stefano Stabellini Introduce a test based on QEMU to run Xen, Dom0 and start a DomU. This is similar to the existing qemu-alpine-arm64.sh script and test. The only differences are: - use Debian's qemu-system-x86_64 (on ARM we build our own) - use ipxe instead of u-boot and ImageBuilder Signed-off-by: Stefano Stabellini --- automation/gitlab-ci/test.yaml | 24 +++++++ automation/scripts/qemu-alpine-x86_64.sh | 92 ++++++++++++++++++++++++ 2 files changed, 116 insertions(+) create mode 100644 automation/scripts/qemu-alpine-x86_64.sh diff --git a/automation/gitlab-ci/test.yaml b/automation/gitlab-ci/test.yaml index 91a10febbf..c1d67ec4b5 100644 --- a/automation/gitlab-ci/test.yaml +++ b/automation/gitlab-ci/test.yaml @@ -47,6 +47,30 @@ qemu-alpine-arm64-gcc: - /^coverity-tested\/.*/ - /^stable-.*/ =20 +qemu-alpine-x86_64-gcc: + stage: test + image: registry.gitlab.com/xen-project/xen/${CONTAINER} + variables: + CONTAINER: debian:unstable + script: + - ./automation/scripts/qemu-alpine-x86_64.sh 2>&1 | tee qemu-smoke-arm= 64.log + dependencies: + - alpine-3.12-gcc + - alpine-3.12-rootfs-export + - kernel-5.10.74-export + artifacts: + paths: + - smoke.serial + - '*.log' + when: always + tags: + - x86_64 + except: + - master + - smoke + - /^coverity-tested\/.*/ + - /^stable-.*/ + qemu-smoke-arm64-gcc: stage: test image: registry.gitlab.com/xen-project/xen/${CONTAINER} diff --git a/automation/scripts/qemu-alpine-x86_64.sh b/automation/scripts/= qemu-alpine-x86_64.sh new file mode 100644 index 0000000000..41b05210d6 --- /dev/null +++ b/automation/scripts/qemu-alpine-x86_64.sh @@ -0,0 +1,92 @@ +#!/bin/bash + +set -ex + +apt-get -qy update +apt-get -qy install --no-install-recommends qemu-system-x86 \ + cpio \ + curl \ + busybox-static + +# DomU Busybox +cd binaries +mkdir -p initrd +mkdir -p initrd/bin +mkdir -p initrd/sbin +mkdir -p initrd/etc +mkdir -p initrd/dev +mkdir -p initrd/proc +mkdir -p initrd/sys +mkdir -p initrd/lib +mkdir -p initrd/var +mkdir -p initrd/mnt +cp /bin/busybox initrd/bin/busybox +initrd/bin/busybox --install initrd/bin +echo "#!/bin/sh + +mount -t proc proc /proc +mount -t sysfs sysfs /sys +mount -t devtmpfs devtmpfs /dev +/bin/sh" > initrd/init +chmod +x initrd/init +cd initrd +find . | cpio --create --format=3D'newc' | gzip > ../initrd.cpio.gz +cd .. + +mkdir -p rootfs +cd rootfs +tar xvzf ../initrd.tar.gz +mkdir proc +mkdir run +mkdir srv +mkdir sys +rm var/run +cp -ar ../dist/install/* . +mv ../initrd.cpio.gz ./root +cp ../bzImage ./root +echo "name=3D\"test\" +memory=3D512 +vcpus=3D1 +kernel=3D\"/root/bzImage\" +ramdisk=3D\"/root/initrd.cpio.gz\" +extra=3D\"console=3Dhvc0 root=3D/dev/ram0 rdinit=3D/bin/sh\" +" > root/test.cfg +echo "#!/bin/bash + +export LD_LIBRARY_PATH=3D/usr/local/lib +bash /etc/init.d/xencommons start + +xl list + +xl create -c /root/test.cfg + +" > etc/local.d/xen.start +chmod +x etc/local.d/xen.start +echo "rc_verbose=3Dyes" >> etc/rc.conf +find . |cpio -H newc -o|gzip > ../xen-rootfs.cpio.gz +cd ../.. + +cat >> binaries/pxelinux.0 <<- EOF +#!ipxe + +kernel xen console=3Dcom1 +module bzImage console=3Dhvc0 +module xen-rootfs.cpio.gz +boot +EOF + +# Run the test +rm -f smoke.serial +set +e +timeout -k 1 720 \ +qemu-system-x86_64 \ + -cpu qemu64,+svm \ + -m 2G -smp 2 \ + -monitor none -serial stdio \ + -nographic \ + -device virtio-net-pci,netdev=3Dn0 \ + -netdev user,id=3Dn0,tftp=3Dbinaries,bootfile=3D/pxelinux.0 |& tee smo= ke.serial + +set -e +(grep -q "Domain-0" smoke.serial && grep -q "BusyBox" smoke.serial) || exi= t 1 +exit 0 --=20 2.17.1