Re: [PATCH v3] genericarm64.conf: fix qemu testing with testimage.bbclass

Mikko Rapeli <[email protected]> Wed, 25 Mar 2026 16:31:49 +0200
Newsgroups org.yoctoproject.lists.poky
Message-ID <acPx1d9uPLgymfa1@nuoska>
Hi,

Could this be applied to master branch?

Cheers,

-Mikko

On Wed, Mar 11, 2026 at 03:32:02PM +0200, Mikko Rapeli wrote:
> genericarm64 machine has supported qemu for a long time but
> the default build config failed with testimage.bbclass to boot
> and run oeqa runtime tests.
> 
> TESTIMAGEDEPENDS needs qemu utilities so that they are correctly
> installed to image sysroot. For qemu machines these are set in
> testimage.bbclass but remain unset for non-qemu machines like
> genericarm64.
> 
> TEST_RUNQEMUPARAMS needs snapshot since default genericarm64 image
> is a compressed wic.zst.
> 
> With these set, default genericarm64 core-image-sato boots correctly
> with testimage.bbclass and all oeqa runtime tests pass on an x86_64
> build machine:
> 
> $ bitbake core-image-sato && bitbake -c testimage core-image-sato
> ...
> SUMMARY:
> core-image-sato () - Ran 75 tests in 229.248s
> core-image-sato - OK - All required tests passed (successes=24,
> skipped=51, failures=0, errors=0)
> NOTE: Tasks Summary: Attempted 1558 tasks of which 1556 didn't need to
> be rerun and all succeeded.
> 
> To boot qemu manually (add "slirp" if tap networking not setup,
> and "nographic" if qemu graphics not setup):
> 
> $ runqemu snapshot core-image-sato
> 
> Signed-off-by: Mikko Rapeli <[email protected]>
> ---
>  meta-yocto-bsp/conf/machine/genericarm64.conf | 4 ++++
>  1 file changed, 4 insertions(+)
> 
> v3: dropping nographic from TEST_RUNQEMUPARAMS, both this
>     and slirp are limitations of test environment and
>     need to be set in local.conf or similar
> 
> v2: dropper slirp from TEST_RUNQEMUPARAMS
>     https://lists.yoctoproject.org/g/poky/message/13859
> 
> v1: https://lists.yoctoproject.org/g/poky/message/13854
> 
> diff --git a/meta-yocto-bsp/conf/machine/genericarm64.conf b/meta-yocto-bsp/conf/machine/genericarm64.conf
> index 2b1ce4bdd02b..be34a5605c24 100644
> --- a/meta-yocto-bsp/conf/machine/genericarm64.conf
> +++ b/meta-yocto-bsp/conf/machine/genericarm64.conf
> @@ -73,5 +73,9 @@ QB_TCPSERIAL_OPT ?= "-device virtio-serial-pci -chardev socket,id=virtcon,port=@
>  # Virtio networking
>  QB_TAP_OPT ?= "-netdev tap,id=net0,ifname=@TAP@,script=no,downscript=no"
>  
> +# snapshot for wic.zst image type
> +TEST_RUNQEMUPARAMS ?= "snapshot"
> +# basic qemu testimage.bbclass support
> +TESTIMAGEDEPENDS:append = " qemu-native:do_populate_sysroot qemu-helper-native:do_populate_sysroot qemu-helper-native:do_addto_recipe_sysroot"
>  # If we're running testimage then we're in a qemu, so ensure u-boot is build
>  TESTIMAGEDEPENDS:append = " u-boot:do_deploy"
> -- 
> 2.34.1
>