How to enable Guest Linux VM on Raspberry PI3?

Lei Zhou lezhou at blackberry.com
Fri Jun 7 20:27:18 CEST 2019


After I brought up L4Re and Fiasco on Raspberry PI3,  would like to enable guest Linux VM on top of it.

I'm looking at the link https://github.com/kernkonzept/manifest/wiki/LinuxVM and hoping I can do the same thing on Raspberry PI3.   

The link seems using hardware-assisted virtualization option uvmm based for guest VM.     There seems also L4Linux Paravirtualization option.    Which option should I use for me to enable guest LInux  VM on Raspberry PI3?

In addition,  when I followed the link to try on QEMU first,   encounter some "vbus" capability issue.   I followed the guidance exactly as the link says.   However,   when I started the command to spawning the Linux VM as:
         $make E=uvmm-basic qemu

It failed with following log:

============================================
MOE: virtual user address space [0-7fffffffff]
MOE: rom name space cap -> [C:103000]
MOE: rwfs name space cap -> [C:105000]
  BOOTFS: [41100000-411974b8] [C:107000] uvmm
  BOOTFS: [41198000-411c4e58] [C:109000] l4re
  BOOTFS: [411c5000-41246770] [C:10b000] ned
  BOOTFS: [41247000-412475c4] [C:10d000] virt-arm_virt.dtb
  BOOTFS: [41248000-41430200] [C:10f000] ramdisk-armv8.cpio.gz
  BOOTFS: [41431000-41431242] [C:111000] uvmm-basic.ned
  BOOTFS: [41432000-42618a00] [C:113000] Image.gz
MOE: cmdline: moe rom/uvmm-basic.ned
MOE: Starting: rom/ned rom/uvmm-basic.ned
MOE: loading 'rom/ned'
Ned says: Hi World!
Ned: loading file: 'rom/uvmm-basic.ned'
VMM[vmbus]: 'vbus' capability not found. Hardware access not possible for VM.
VMM[main]: Hello out there.
VMM: FATAL: ERROR: ARM GIC virtualization does not work without passing the virtual GICC via the vbus
VMM[vm]: Device creation for virtual device virtio_uart at 20000 failed. Disabling device.
VMM[]: virtio_net at 10000.l4vmm,virtiocap: capability net is invalid.
VMM[vm]: Device creation for virtual device virtio_net at 10000 failed. Disabling device.
VMM: FATAL: ERROR: ARM GIC virtualization does not work without passing the virtual GICC via the vbus
VMM[vm]: Device creation for virtual device interrupt-controller failed. Disabling device.
VMM: FATAL: Parsing timer interrupt: Argument out of range
qemu-system-aarch64: terminating on signal 2
Makefile:6: recipe for target 'do-all-make-goals' failed
make: *** [do-all-make-goals] Interrupt
=========================================================================

Any feedbacks are greatly appreciated!
Lei Zhou



More information about the l4-hackers mailing list