Re: [PATCH xenomai-images v2 1/4] ci: Build and test the evl risc-v port on qemu
Jan Kiszka <[email protected]>
| Newsgroups | dev.linux.lists.xenomai |
|---|---|
| Message-ID | <[email protected]> |
On 05.05.26 11:06, Tobias Schaffner wrote: > Build evl for quemu-riscv64 and run the evl tests in lava. Skip the > ptrace-sync test for now as it fails because of an open issue in EVL. > > Added sections in the end of the riscv64 defconfig for nfs and > debugging specific configs to allow easy factoring out as snippets > later. > > Only run the tests on the qemu05 runner (tag: SIEMENS_ERL_QEMU) as long > as qemu01 runs on the outdated qemu 7.2.2 which hangs up with riscv > workloads from time to time. > > Signed-off-by: Tobias Schaffner <[email protected]> > --- > ci/lib/gitlab-ci-base.yml | 38 ++- > ci/lib/kernel/head.yml | 13 + > conf/machine/qemu-riscv64.conf | 1 - > recipes-kernel/linux/files/common_nodbg.cfg | 2 + > recipes-kernel/linux/files/riscv64_defconfig | 335 +++++++++++++++++++ > tests/jobs/xenomai-qemu-riscv64.yml | 95 ++++++ > 6 files changed, 477 insertions(+), 7 deletions(-) > create mode 100644 recipes-kernel/linux/files/riscv64_defconfig > create mode 100644 tests/jobs/xenomai-qemu-riscv64.yml > > diff --git a/ci/lib/gitlab-ci-base.yml b/ci/lib/gitlab-ci-base.yml > index d815474..aaeb778 100644 > --- a/ci/lib/gitlab-ci-base.yml > +++ b/ci/lib/gitlab-ci-base.yml > @@ -85,11 +85,14 @@ default: > paths: > - build/downloads > > +.build-qemu-rules: &build-qemu-rules > + - if: '$KERNEL_VERSION == $KERNEL_VERSION_WITH_QEMU' > + - if: '$ALL_QEMU_JOBS == "true"' > + > .build-qemu: > extends: .build > rules: > - - if: '$KERNEL_VERSION == $KERNEL_VERSION_WITH_QEMU' > - - if: '$ALL_QEMU_JOBS == "true"' > + - *build-qemu-rules > > .test: > stage: test > @@ -109,6 +112,12 @@ default: > rules: > - if: '$LAVA_TESTS_ENABLED == "true"' > > +.test-qemu-rules: &test-qemu-rules > + - if: '$LAVA_TESTS_ENABLED != "true"' > + when: never > + - if: '$KERNEL_VERSION == $KERNEL_VERSION_WITH_QEMU' > + - if: '$ALL_QEMU_JOBS == "true"' > + > .test-qemu: > extends: .test > variables: > @@ -116,10 +125,7 @@ default: > ADDITIONAL_TEST_TIMEOUT_MINUTES: 25 > EVL_TESTS_SKIP_PATTERN: "sched-quota-accuracy|sched-tp-accuracy|sched-tp-overrun|monitor-event-untrack" > rules: > - - if: '$LAVA_TESTS_ENABLED != "true"' > - when: never > - - if: '$KERNEL_VERSION == $KERNEL_VERSION_WITH_QEMU' > - - if: '$ALL_QEMU_JOBS == "true"' > + - *test-qemu-rules > > .build:qemu-amd64: > extends: .build-qemu > @@ -154,6 +160,26 @@ default: > variables: > TARGET: qemu-arm64 > > +.build:qemu-riscv64: > + extends: .build-qemu > + variables: > + TARGET: qemu-riscv64 > + CACHE_ARCH: riscv64 > + rules: > + - if: '$XENOMAI_VERSION != "4-next"' > + when: never > + - *build-qemu-rules > + > +.lava-test:qemu-riscv64: > + extends: .test-qemu > + variables: > + TARGET: qemu-riscv64 > + EVL_TESTS_SKIP_PATTERN: "ptrace-sync|sched-quota-accuracy|sched-tp-accuracy|sched-tp-overrun|monitor-event-untrack" > + rules: > + - if: '$XENOMAI_VERSION != "4-next"' > + when: never > + - *test-qemu-rules > + > .build:hikey: > extends: .build > variables: > diff --git a/ci/lib/kernel/head.yml b/ci/lib/kernel/head.yml > index 376a002..e2884c2 100644 > --- a/ci/lib/kernel/head.yml > +++ b/ci/lib/kernel/head.yml > @@ -48,6 +48,19 @@ lava-test-head:qemu-arm64: > variables: > KERNEL_VERSION: "head" > > +build-head:qemu-riscv64: > + extends: .build:qemu-riscv64 > + variables: > + LINUX_BUILD_OPTION: ":kas/opt/linux-head.yaml" > + KERNEL_VERSION: "head" > + CACHE_KERNEL: evl > + > +lava-test-head:qemu-riscv64: > + needs: [ "build-head:qemu-riscv64" ] > + extends: .lava-test:qemu-riscv64 > + variables: > + KERNEL_VERSION: "head" > + > build-head:rpi4: > extends: .build:rpi4 > variables: > diff --git a/conf/machine/qemu-riscv64.conf b/conf/machine/qemu-riscv64.conf > index 8dfcda4..4fb66c4 100644 > --- a/conf/machine/qemu-riscv64.conf > +++ b/conf/machine/qemu-riscv64.conf > @@ -12,4 +12,3 @@ > require qemu-machine.inc > > DISTRO_ARCH = "riscv64" > -KERNEL_DEFCONFIG = "" > diff --git a/recipes-kernel/linux/files/common_nodbg.cfg b/recipes-kernel/linux/files/common_nodbg.cfg > index a57463b..6637d16 100644 > --- a/recipes-kernel/linux/files/common_nodbg.cfg > +++ b/recipes-kernel/linux/files/common_nodbg.cfg > @@ -1,5 +1,7 @@ > # CONFIG_IPIPE_DEBUG is not set > # CONFIG_XENO_OPT_DEBUG is not set > +# CONFIG_EVL_DEBUG is not set > +# CONFIG_EVL_DEBUG_CORE is not set > # CONFIG_DEBUG_VM is not set > # CONFIG_DEBUG_LIST is not set > # CONFIG_BUG_ON_DATA_CORRUPTION is not set > diff --git a/recipes-kernel/linux/files/riscv64_defconfig b/recipes-kernel/linux/files/riscv64_defconfig > new file mode 100644 > index 0000000..a4ffa7f > --- /dev/null > +++ b/recipes-kernel/linux/files/riscv64_defconfig > @@ -0,0 +1,335 @@ > +CONFIG_SYSVIPC=y > +CONFIG_POSIX_MQUEUE=y > +CONFIG_NO_HZ_IDLE=y > +CONFIG_HIGH_RES_TIMERS=y > +CONFIG_BPF_SYSCALL=y > +CONFIG_IKCONFIG=y > +CONFIG_IKCONFIG_PROC=y > +CONFIG_CGROUPS=y > +CONFIG_MEMCG=y > +CONFIG_BLK_CGROUP=y > +CONFIG_CGROUP_SCHED=y > +CONFIG_CFS_BANDWIDTH=y > +CONFIG_CGROUP_PIDS=y > +CONFIG_CGROUP_FREEZER=y > +CONFIG_CGROUP_HUGETLB=y > +CONFIG_CPUSETS=y > +CONFIG_CGROUP_DEVICE=y > +CONFIG_CGROUP_CPUACCT=y > +CONFIG_CGROUP_PERF=y > +CONFIG_CGROUP_BPF=y > +CONFIG_USER_NS=y > +CONFIG_CHECKPOINT_RESTORE=y > +CONFIG_BLK_DEV_INITRD=y > +CONFIG_PROFILING=y > +CONFIG_ARCH_ANDES=y > +CONFIG_ARCH_ANLOGIC=y > +CONFIG_ARCH_MICROCHIP=y > +CONFIG_ARCH_SIFIVE=y > +CONFIG_ARCH_SOPHGO=y > +CONFIG_ARCH_SPACEMIT=y > +CONFIG_SOC_STARFIVE=y > +CONFIG_ARCH_SUNXI=y > +CONFIG_ARCH_TENSTORRENT=y > +CONFIG_ARCH_THEAD=y > +CONFIG_ARCH_VIRT=y > +CONFIG_ARCH_CANAAN=y > +CONFIG_SMP=y > +CONFIG_CPU_FREQ=y > +CONFIG_CPU_FREQ_STAT=y > +CONFIG_CPU_FREQ_GOV_POWERSAVE=m > +CONFIG_CPU_FREQ_GOV_USERSPACE=y > +CONFIG_CPU_FREQ_GOV_ONDEMAND=y > +CONFIG_CPU_FREQ_GOV_CONSERVATIVE=m > +CONFIG_CPUFREQ_DT=y > +CONFIG_ACPI_CPPC_CPUFREQ=m > +CONFIG_VIRTUALIZATION=y > +CONFIG_KVM=m > +CONFIG_ACPI=y > +CONFIG_JUMP_LABEL=y > +CONFIG_MODULES=y > +CONFIG_MODULE_UNLOAD=y > +CONFIG_BLK_DEV_THROTTLING=y > +CONFIG_SPARSEMEM_MANUAL=y > +CONFIG_NET=y > +CONFIG_PACKET=y > +CONFIG_XFRM_USER=m > +CONFIG_IP_MULTICAST=y > +CONFIG_IP_ADVANCED_ROUTER=y > +CONFIG_IP_PNP=y > +CONFIG_IP_PNP_DHCP=y > +CONFIG_IP_PNP_BOOTP=y > +CONFIG_IP_PNP_RARP=y > +CONFIG_INET_ESP=m > +CONFIG_NETFILTER=y > +CONFIG_BRIDGE_NETFILTER=m > +CONFIG_NF_CONNTRACK=m > +CONFIG_NF_CONNTRACK_FTP=m > +CONFIG_NF_CONNTRACK_TFTP=m > +CONFIG_NETFILTER_XT_MARK=m > +CONFIG_NETFILTER_XT_MATCH_ADDRTYPE=m > +CONFIG_NETFILTER_XT_MATCH_CONNTRACK=m > +CONFIG_NETFILTER_XT_MATCH_IPVS=m > +CONFIG_IP_VS=m > +CONFIG_IP_VS_PROTO_TCP=y > +CONFIG_IP_VS_PROTO_UDP=y > +CONFIG_IP_VS_RR=m > +CONFIG_IP_VS_NFCT=y > +CONFIG_NF_LOG_ARP=m > +CONFIG_NF_LOG_IPV4=m > +CONFIG_IP_NF_IPTABLES=m > +CONFIG_IP_NF_FILTER=m > +CONFIG_IP_NF_TARGET_REJECT=m > +CONFIG_IP_NF_NAT=m > +CONFIG_IP_NF_TARGET_MASQUERADE=m > +CONFIG_IP_NF_TARGET_REDIRECT=m > +CONFIG_IP_NF_MANGLE=m > +CONFIG_NF_LOG_IPV6=m > +CONFIG_IP6_NF_IPTABLES=m > +CONFIG_IP6_NF_MATCH_IPV6HEADER=m > +CONFIG_IP6_NF_FILTER=m > +CONFIG_IP6_NF_TARGET_REJECT=m > +CONFIG_IP6_NF_MANGLE=m > +CONFIG_BRIDGE=m > +CONFIG_BRIDGE_VLAN_FILTERING=y > +CONFIG_VLAN_8021Q=m > +CONFIG_NET_SCHED=y > +CONFIG_NET_CLS_CGROUP=m > +CONFIG_NETLINK_DIAG=y > +CONFIG_CGROUP_NET_PRIO=y > +CONFIG_CAN=m > +CONFIG_NET_9P=y > +CONFIG_NET_9P_VIRTIO=y > +CONFIG_PCI=y > +CONFIG_PCIEPORTBUS=y > +CONFIG_PCI_HOST_GENERIC=y > +CONFIG_PCIE_XILINX=y > +CONFIG_PCIE_FU740=y > +CONFIG_PCIE_STARFIVE_HOST=m > +CONFIG_DEVTMPFS=y > +CONFIG_DEVTMPFS_MOUNT=y > +CONFIG_SIFIVE_CCACHE=y > +CONFIG_MTD=y > +CONFIG_MTD_BLOCK=y > +CONFIG_MTD_CFI=y > +CONFIG_MTD_CFI_ADV_OPTIONS=y > +CONFIG_MTD_SPI_NOR=y > +CONFIG_BLK_DEV_LOOP=y > +CONFIG_VIRTIO_BLK=y > +CONFIG_BLK_DEV_NVME=m > +CONFIG_BLK_DEV_SD=y > +CONFIG_BLK_DEV_SR=y > +CONFIG_SCSI_VIRTIO=y > +CONFIG_ATA=y > +CONFIG_SATA_AHCI=y > +CONFIG_SATA_AHCI_PLATFORM=y > +CONFIG_MD=y > +CONFIG_BLK_DEV_DM=m > +CONFIG_DM_THIN_PROVISIONING=m > +CONFIG_NETDEVICES=y > +CONFIG_DUMMY=m > +CONFIG_MACVLAN=m > +CONFIG_IPVLAN=m > +CONFIG_VXLAN=m > +CONFIG_VETH=m > +CONFIG_VIRTIO_NET=y > +CONFIG_MACB=y > +CONFIG_E1000E=y > +CONFIG_R8169=y > +CONFIG_STMMAC_ETH=y > +CONFIG_STMMAC_PLATFORM=y > +CONFIG_DWMAC_STARFIVE=y > +CONFIG_DWMAC_THEAD=m > +CONFIG_MICREL_PHY=y > +CONFIG_MICROSEMI_PHY=y > +CONFIG_MOTORCOMM_PHY=y > +CONFIG_INPUT_MOUSEDEV=y > +CONFIG_INPUT_EVDEV=y > +CONFIG_KEYBOARD_GPIO=y > +CONFIG_KEYBOARD_SUN4I_LRADC=m > +CONFIG_SERIAL_8250=y > +CONFIG_SERIAL_8250_CONSOLE=y > +CONFIG_SERIAL_8250_DW=y > +CONFIG_SERIAL_OF_PLATFORM=y > +CONFIG_SERIAL_EARLYCON_RISCV_SBI=y > +CONFIG_VIRTIO_CONSOLE=y > +CONFIG_HW_RANDOM=y > +CONFIG_HW_RANDOM_VIRTIO=y > +CONFIG_HW_RANDOM_JH7110=m > +CONFIG_I2C=y > +CONFIG_I2C_CHARDEV=m > +CONFIG_I2C_DESIGNWARE_CORE=y > +CONFIG_I2C_MV64XXX=m > +CONFIG_SPI=y > +CONFIG_SPI_CADENCE_QUADSPI=m > +CONFIG_SPI_FSL_QUADSPI=m > +CONFIG_SPI_PL022=m > +CONFIG_SPI_SIFIVE=y > +CONFIG_SPI_SUN6I=y > +# CONFIG_PTP_1588_CLOCK is not set > +CONFIG_PINCTRL_TH1520=y > +CONFIG_PINCTRL_SOPHGO_CV1800B=y > +CONFIG_PINCTRL_SOPHGO_CV1812H=y > +CONFIG_PINCTRL_SOPHGO_SG2000=y > +CONFIG_PINCTRL_SOPHGO_SG2002=y > +CONFIG_GPIO_DWAPB=y > +CONFIG_GPIO_SIFIVE=y > +CONFIG_GPIO_SPACEMIT_K1=y > +CONFIG_POWER_RESET_GPIO_RESTART=y > +CONFIG_SENSORS_SFCTEMP=m > +CONFIG_CPU_THERMAL=y > +CONFIG_DEVFREQ_THERMAL=y > +CONFIG_WATCHDOG=y > +CONFIG_SUNXI_WATCHDOG=y > +CONFIG_MFD_AXP20X_I2C=y > +CONFIG_REGULATOR=y > +CONFIG_REGULATOR_FIXED_VOLTAGE=y > +CONFIG_REGULATOR_AXP20X=y > +CONFIG_REGULATOR_GPIO=y > +CONFIG_MEDIA_SUPPORT=m > +CONFIG_MEDIA_PLATFORM_SUPPORT=y > +CONFIG_VIDEO_CADENCE_CSI2RX=m > +CONFIG_DRM=m > +CONFIG_DRM_RADEON=m > +CONFIG_DRM_NOUVEAU=m > +CONFIG_DRM_SUN4I=m > +CONFIG_DRM_VIRTIO_GPU=m > +CONFIG_FB=y > +CONFIG_SOUND=y > +CONFIG_SND=y > +CONFIG_SND_SOC=y > +CONFIG_SND_DESIGNWARE_I2S=m > +CONFIG_SND_SOC_JH7110_PWMDAC=m > +CONFIG_SND_SOC_JH7110_TDM=m > +CONFIG_SND_SOC_WM8978=m > +CONFIG_SND_SIMPLE_CARD=m > +CONFIG_USB=y > +CONFIG_USB_OTG=y > +CONFIG_USB_XHCI_HCD=y > +CONFIG_USB_XHCI_PLATFORM=y > +CONFIG_USB_EHCI_HCD=y > +CONFIG_USB_EHCI_HCD_PLATFORM=y > +CONFIG_USB_OHCI_HCD=y > +CONFIG_USB_OHCI_HCD_PLATFORM=y > +CONFIG_USB_STORAGE=y > +CONFIG_USB_UAS=y > +CONFIG_USB_CDNS_SUPPORT=m > +CONFIG_USB_CDNS3=m > +CONFIG_USB_CDNS3_GADGET=y > +CONFIG_USB_CDNS3_HOST=y > +CONFIG_USB_CDNS3_STARFIVE=m > +CONFIG_USB_MUSB_HDRC=m > +CONFIG_USB_MUSB_SUNXI=m > +CONFIG_NOP_USB_XCEIV=m > +CONFIG_USB_GADGET=y > +CONFIG_USB_CONFIGFS=m > +CONFIG_USB_CONFIGFS_SERIAL=y > +CONFIG_USB_CONFIGFS_ACM=y > +CONFIG_USB_CONFIGFS_OBEX=y > +CONFIG_USB_CONFIGFS_NCM=y > +CONFIG_USB_CONFIGFS_ECM=y > +CONFIG_USB_CONFIGFS_ECM_SUBSET=y > +CONFIG_USB_CONFIGFS_RNDIS=y > +CONFIG_USB_CONFIGFS_EEM=y > +CONFIG_USB_CONFIGFS_MASS_STORAGE=y > +CONFIG_USB_CONFIGFS_F_FS=y > +CONFIG_MMC=y > +CONFIG_MMC_SDHCI=y > +CONFIG_MMC_SDHCI_PLTFM=y > +CONFIG_MMC_SDHCI_OF_DWCMSHC=y > +CONFIG_MMC_SDHCI_OF_K1=y > +CONFIG_MMC_SDHCI_CADENCE=y > +CONFIG_MMC_SPI=y > +CONFIG_MMC_DW=y > +CONFIG_MMC_DW_STARFIVE=y > +CONFIG_MMC_SUNXI=y > +CONFIG_RTC_CLASS=y > +CONFIG_RTC_DRV_SUN6I=y > +CONFIG_DMADEVICES=y > +CONFIG_DMA_SUN6I=m > +CONFIG_DW_AXI_DMAC=y > +CONFIG_MMP_PDMA=m > +CONFIG_VIRTIO_PCI=y > +CONFIG_VIRTIO_BALLOON=y > +CONFIG_VIRTIO_INPUT=y > +CONFIG_VIRTIO_MMIO=y > +CONFIG_CLK_SOPHGO_CV1800=y > +CONFIG_CLK_SOPHGO_SG2042_PLL=y > +CONFIG_CLK_SOPHGO_SG2042_CLKGEN=y > +CONFIG_CLK_SOPHGO_SG2042_RPGATE=y > +CONFIG_SPACEMIT_K1_CCU=y > +CONFIG_SPACEMIT_K3_CCU=y > +CONFIG_SUN8I_DE2_CCU=m > +CONFIG_SUN50I_IOMMU=y > +CONFIG_RPMSG_CHAR=y > +CONFIG_RPMSG_CTRL=y > +CONFIG_RPMSG_VIRTIO=y > +CONFIG_PM_DEVFREQ=y > +CONFIG_IIO=y > +CONFIG_PWM=y > +CONFIG_PWM_PXA=m > +CONFIG_THEAD_C900_ACLINT_SSWI=y > +CONFIG_PHY_SUN4I_USB=m > +CONFIG_PHY_STARFIVE_JH7110_DPHY_RX=m > +CONFIG_PHY_STARFIVE_JH7110_PCIE=m > +CONFIG_PHY_STARFIVE_JH7110_USB=m > +CONFIG_CLK_STARFIVE_JH7110_AON=y > +CONFIG_CLK_STARFIVE_JH7110_STG=y > +CONFIG_LIBNVDIMM=y > +CONFIG_NVMEM_SUNXI_SID=y > +CONFIG_EXT4_FS=y > +CONFIG_EXT4_FS_POSIX_ACL=y > +CONFIG_EXT4_FS_SECURITY=y > +CONFIG_BTRFS_FS=m > +CONFIG_BTRFS_FS_POSIX_ACL=y > +CONFIG_AUTOFS_FS=y > +CONFIG_OVERLAY_FS=m > +CONFIG_ISO9660_FS=y > +CONFIG_JOLIET=y > +CONFIG_ZISOFS=y > +CONFIG_MSDOS_FS=y > +CONFIG_VFAT_FS=y > +CONFIG_TMPFS=y > +CONFIG_TMPFS_POSIX_ACL=y > +CONFIG_HUGETLBFS=y > +CONFIG_NFS_FS=y > +CONFIG_NFS_V4=y > +CONFIG_NFS_V4_1=y > +CONFIG_NFS_V4_2=y > +CONFIG_ROOT_NFS=y > +CONFIG_9P_FS=y > +CONFIG_NLS_CODEPAGE_437=y > +CONFIG_NLS_ISO8859_1=y > +CONFIG_SECURITY=y > +CONFIG_SECURITY_SELINUX=y > +CONFIG_SECURITY_APPARMOR=y > +CONFIG_DEFAULT_SECURITY_DAC=y > +CONFIG_CRYPTO_USER_API_HASH=y > +CONFIG_CRYPTO_DEV_VIRTIO=y > +CONFIG_PRINTK_TIME=y > +CONFIG_DEBUG_KERNEL=y > +CONFIG_DEBUG_FS=y > +# CONFIG_RUNTIME_TESTING_MENU is not set > +CONFIG_MEMTEST=y > + > +# lava lab nfs enablement > +CONFIG_NFS_FS=y > +CONFIG_NFS_V3=y > +CONFIG_NFS_V4=y > +CONFIG_ROOT_NFS=y > +CONFIG_IP_PNP=y > +CONFIG_IP_PNP_DHCP=y > + > +# debug additions > +CONFIG_BUG_ON_DATA_CORRUPTION=y > +CONFIG_DEBUG_ATOMIC_SLEEP=y > +CONFIG_DEBUG_LIST=y > +CONFIG_DEBUG_LOCK_ALLOC=y > +CONFIG_DEBUG_VM=y > +CONFIG_DYNAMIC_FTRACE=y > +CONFIG_EVL_DEBUG=y > +CONFIG_EVL_DEBUG_CORE=y > +CONFIG_FTRACE=y > +CONFIG_FUNCTION_TRACER=y > +CONFIG_PROVE_LOCKING=y > +CONFIG_STACKTRACE=y > diff --git a/tests/jobs/xenomai-qemu-riscv64.yml b/tests/jobs/xenomai-qemu-riscv64.yml > new file mode 100644 > index 0000000..d1f0217 > --- /dev/null > +++ b/tests/jobs/xenomai-qemu-riscv64.yml > @@ -0,0 +1,95 @@ > +# > +# Xenomai Real-Time System > +# > +# Copyright (c) Siemens AG, 2025 > +# > +# Authors: > +# Tobias Schaffner <[email protected]> > +# > +# SPDX-License-Identifier: MIT > +# > +device_type: qemu > +job_name: QEMU pipeline, xenomai-images-qemu-riscv64 > +tags: > + - SIEMENS_ERL_QEMU > + > +timeouts: > + job: > + minutes: 90 > + action: > + minutes: 65 > + connection: > + minutes: 5 > +priority: medium > +visibility: public > + > +# context allows specific values to be overridden or included > +context: > + # tell the qemu template which architecture is being tested > + # the template uses that to ensure that qemu-system-riscv64 is executed. > + arch: riscv64 > + cpu: rv64 > + machine: virt > + no_kvm: True > + extra_options: > + - -smp 2 > + - -m 2048 > + - -device virtio-serial-device > + - -device virtconsole,chardev=con > + - -chardev vc,id=con > + - -device virtio-blk-device,drive=disk > + - -device virtio-net-pci,netdev=net > + - -netdev user,id=net > + guestfs_interface: virtio > +metadata: > + # please change these fields when modifying this job for your own tests. > + docs-source: xenomai-qemu-riscv64 > + docs-filename: qemu-pipeline-xenomai-riscv64 > + > +# ACTION_BLOCK > +actions: > +- deploy: > + timeout: > + minutes: 15 > + to: tmpfs > + images: > + kernel: > + image_arg: -kernel {kernel} -append "root=/dev/vda rw" > + url: ${DEPLOY_URL}/${ISAR_IMAGE}-${ISAR_DISTRIBUTION}-${TARGET}-vmlinux > + initrd: > + image_arg: -initrd {initrd} > + url: ${DEPLOY_URL}/${ISAR_IMAGE}-${ISAR_DISTRIBUTION}-${TARGET}-initrd.img > + rootfs: > + image_arg: -drive file={rootfs},discard=unmap,if=none,id=disk,format=raw > + url: ${DEPLOY_URL}/${ISAR_IMAGE}-${ISAR_DISTRIBUTION}-${TARGET}.ext4.gz > + compression: gz > +# BOOT_BLOCK > +- boot: > + timeout: > + minutes: 15 > + method: qemu > + media: tmpfs > + prompts: ["root@demo:"] > + auto_login: > + login_prompt: 'demo login:' > + username: root > + password_prompt: 'Password:' > + password: root > + > +- test: > + timeout: > + minutes: ${TEST_TIMEOUT_MINUTES} > + definitions: > + - repository: > + metadata: > + format: Lava-Test Test Definition 1.0 > + name: xenomai-test-suite > + description: "runs the xenomai smokey test suite" > + maintainer: > + - [email protected] > + run: > + steps: > + - ${TEST_COMMAND} || lava-test-raise "xenomai-test failed!" > + from: inline > + path: inline/xenomai-test-suite.yaml > + name: xenomai-test-suite This looks good, so I'm taking it to next already. Thanks, Jan -- Siemens AG, Foundational Technologies Linux Expert Center