Mailing List Archive

Problem creating domU guest on arm64
Hi all,

I'm facing two kind of problem trying to create a Xen guest domain on
rockpro64 (arm64).

I have successfully built uboot, xen (4.14.4) and dom0 linux kernel with
xen tool stack, these two last starting from buildroot (with linux kernel
version 5.15.33 and xen toolstack version 4.14.4)

These are the process of Xen:

177 root /usr/sbin/xenwatchdogd 30 15
203 root /usr/sbin/xenstored --pid-file /var/run/xen/xenstored.pid
208 root /usr/sbin/xenconsoled --pid-file=/var/run/xen/xenconsoled.pid
214 root /usr/lib/xen/bin/qemu-system-i386 -xen-domid 0 -xen-attach
-name dom0 -nographic -M xenpv -daemonize -monitor /dev/null
-serial/dev/nul -parallel/dev/null -pidfile/var/run/xen/qemu-dom0.pid

and the drivers loaded as a module:
# lsmod
Module Size Used by Tainted: G
xen_netback 65536 0
xen_blkback 49152 0

Xen and dom0 Image boot up successfully, at the end:
================================================
>xl list
Name ID Mem VCPUs State Time(s)
Domain-0 0 1024 2 r----- 4000.3

# uname -a
Linux rockpro64 5.15.33 #3 SMP PREEMPT Fri Apr 15 11:01:37 CEST 2022
aarch64 GNU/Linux
================================================

when I try to create a domU domain I have problem with disk backend, I have
made several attempts trying with different domU linux and I always get the
following error :

================================================
Parsing config from ./alpine_xen_domu.config

libxl: error: libxl_aoutils.c:539:async_exec_timeout: killing execution of
/etc/xen/scripts/block add because of timeout
libxl: error: libxl_create.c:1608:domcreate_launch_dm: Domain 2:unable to
add disk devices
libxl: error: libxl_aoutils.c:539:async_exec_timeout: killing execution of
/etc/xen/scripts/block remove because of timeout
libxl: error: libxl_domain.c:1182:libxl__destroy_domid: Domain
2:Non-existant domain
libxl: error: libxl_domain.c:1136:domain_destroy_callback: Domain 2:Unable
to destroy guest
libxl: error: libxl_domain.c:1063:domain_destroy_cb: Domain 2:Destruction
of domain failed
================================================

The last try was with alpine domU linux with the following config:
================================================

# Alpine Linux PV DomU
# Kernel paths for install
kernel = "/home/xen/vmlinuz-virt"
ramdisk = "/home/xen/initramfs-virt"
extra="modules=loop,squashfs console=hvc0"
# Path to HDD and iso file
disk = [ 'format=raw, vdev=xvda, access=w, target=/data/a1.img',
'format=raw, vdev=xvdc, access=r, devtype=cdrom,
target=/home/xen/alpine-virt-3.15.3-armv7.iso' ]
# Network configuration
vif = ['bridge=br0']
# DomU settings

memory = 512

name = "alpine-a1"

vcpus = 1

maxvcpus = 1
================================================

thanks a lot in advance
Best regards
Marco
Re: Problem creating domU guest on arm64 [ In reply to ]
Hi all,



I did further attempts but I have always problems with disk backend setup
during creation of domU domain.



The latest attempt was using deban arm64 image with this configuration:



memory = 512
name = "debian"
vcpus = 1
maxvcpus = 1

kernel = "/home/xen/vmlinuz"
ramdisk = "/home/xen/initrd.img"
disk = ["phy:/dev/loop0,xvda,rw"]
extra = "root=/dev/xvda rw console=hvc0 earlyprintk=xen"



kernel and ramdisk boot up successfully and I can attach to the domU
console, but when I try to define the disk backend with the debian rootfs
the creation of the domain fails.



rootfs is attached to loop device as follow:



losetup /dev/loop0 /home/xen/rootfs.img



I attached to this mail the verbose trace of the command xl create



Thanks a lot in advance for any kind of help

Best Regards

Marco

Il giorno ven 15 apr 2022 alle ore 12:52 Marco Cacre <marco.cacre@gmail.com>
ha scritto:

> Hi all,
>
> I'm facing two kind of problem trying to create a Xen guest domain on
> rockpro64 (arm64).
>
> I have successfully built uboot, xen (4.14.4) and dom0 linux kernel with
> xen tool stack, these two last starting from buildroot (with linux kernel
> version 5.15.33 and xen toolstack version 4.14.4)
>
> These are the process of Xen:
>
> 177 root /usr/sbin/xenwatchdogd 30 15
> 203 root /usr/sbin/xenstored --pid-file /var/run/xen/xenstored.pid
> 208 root /usr/sbin/xenconsoled --pid-file=/var/run/xen/xenconsoled.pid
> 214 root /usr/lib/xen/bin/qemu-system-i386 -xen-domid 0 -xen-attach
> -name dom0 -nographic -M xenpv -daemonize -monitor /dev/null
> -serial/dev/nul -parallel/dev/null -pidfile/var/run/xen/qemu-dom0.pid
>
> and the drivers loaded as a module:
> # lsmod
> Module Size Used by Tainted: G
> xen_netback 65536 0
> xen_blkback 49152 0
>
> Xen and dom0 Image boot up successfully, at the end:
> ================================================
> >xl list
> Name ID Mem VCPUs State Time(s)
> Domain-0 0 1024 2 r-----
> 4000.3
>
> # uname -a
> Linux rockpro64 5.15.33 #3 SMP PREEMPT Fri Apr 15 11:01:37 CEST 2022
> aarch64 GNU/Linux
> ================================================
>
> when I try to create a domU domain I have problem with disk backend, I
> have made several attempts trying with different domU linux and I always
> get the following error :
>
> ================================================
> Parsing config from ./alpine_xen_domu.config
>
> libxl: error: libxl_aoutils.c:539:async_exec_timeout: killing execution of
> /etc/xen/scripts/block add because of timeout
> libxl: error: libxl_create.c:1608:domcreate_launch_dm: Domain 2:unable to
> add disk devices
> libxl: error: libxl_aoutils.c:539:async_exec_timeout: killing execution of
> /etc/xen/scripts/block remove because of timeout
> libxl: error: libxl_domain.c:1182:libxl__destroy_domid: Domain
> 2:Non-existant domain
> libxl: error: libxl_domain.c:1136:domain_destroy_callback: Domain 2:Unable
> to destroy guest
> libxl: error: libxl_domain.c:1063:domain_destroy_cb: Domain 2:Destruction
> of domain failed
> ================================================
>
> The last try was with alpine domU linux with the following config:
> ================================================
>
> # Alpine Linux PV DomU
> # Kernel paths for install
> kernel = "/home/xen/vmlinuz-virt"
> ramdisk = "/home/xen/initramfs-virt"
> extra="modules=loop,squashfs console=hvc0"
> # Path to HDD and iso file
> disk = [ 'format=raw, vdev=xvda, access=w, target=/data/a1.img',
> 'format=raw, vdev=xvdc, access=r, devtype=cdrom,
> target=/home/xen/alpine-virt-3.15.3-armv7.iso' ]
> # Network configuration
> vif = ['bridge=br0']
> # DomU settings
>
> memory = 512
>
> name = "alpine-a1"
>
> vcpus = 1
>
> maxvcpus = 1
> ================================================
>
> thanks a lot in advance
> Best regards
> Marco
>
Re: Problem creating domU guest on arm64 [ In reply to ]
Am Mittwoch, 20. April 2022, 12:55:50 CEST schrieb Marco Cacre:
> disk = ["phy:/dev/loop0,xvda,rw"]
why not using an xen tap / aio to connect the disk image file - i.e.:

disk = ['tap:aio:/xen/XenGuest1.img,xvda1,w', 'tap:aio:/xen/XenGuest1.swap,xvda2,w']

https://www.virtuatopia.com/index.php?title=Building_a_Xen_Virtual_Guest_Filesystem_on_a_Disk_Image_(Cloning_Host_System)


best regards,


niels.

--
---
Niels Dettenbach
Syndicat IT & Internet
https://www.syndicat.com
PGP: https://syndicat.com/pub_key.asc
---