[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Installing Xen on Raspberry Pi 4



Hello,

 

for my bachelor thesis I have to install Xen on a Raspberry Pi 4 8GB. Since I am far from being an expert with this whole linux-from-source-thing, I rely heavily on the various guides and forums regarding this topic. The main guide I try to follow is Xen on Raspberry Pi 4 adventures - Xen Project and after much trial and error, I made some progress with it.

My current setup:

  • SD card with Raspberry OS as a base
  • added the three lines from the guide to config.txt, plus lcd_rotate=2 to flip the attached official 7” touch display
  • the u-boot.bin I’m using is self compiled from source
  • boot.scr is added according to the guide
  • boot2.scr is generated using ImageBuilder
  • I don’t remember where I got the dtb from, I think it’s from the RPi Foundation source
  • Xen 4.14.1 is self compiled from source
  • the kernel I am using as Dom0 is a self compiled 64Bit, 5.10.33 from the Raspberry Pi Foundation source tree, with the bcm2711_defconfig and all the necessary Xen stuff added through menuconfig
  • To get an initrd, I booted said kernel and followed this answer

 

Piecing all this things together u-boot and Xen start, but during the initialization of Dom0 there’s an error. I suspect, that it has to do with the sentence Any 64-bit rootfs should work for Dom0 in the guide, as this is the only thing I don’t get how to implement.

 

I included the whole boot log as an attachment, but here is the part with the error:

 

[   18.415270] Run /init as init process

[   18.458079] random: fast init done

Loading, please wait...

[   18.500936] mmc1: new high speed SDIO card at address 0001

[   18.549790] mmc0: new ultra high speed DDR50 SDHC card at address aaaa

[   18.561211] mmcblk0: mmc0:aaaa SC16G 14.8 GiB

[   18.574047]  mmcblk0: p1 p2

Starting version 241

Begin: Loading essential drivers ... done.

Begin: Running /scripts/init-premount ... done.

Begin: Mounting root file system ... Begin: Running /scripts/local-top ... done.

Begin: Running /scripts/local-premount ... done.

[   21.012213] process '/usr/bin/fstype' started with executable stack

Begin: Waiting for root file system ... Begin: Running /scripts/local-block ... done.

Begin: Running /scripts/local-block ... done.

(several repetitions)

Begin: Running /scripts/local-block ... done.

done.

Gave up waiting for root file system device.  Common problems:

- Boot args (cat /proc/cmdline)

   - Check rootdelay= (did the system wait long enough?)

- Missing modules (cat /proc/modules; ls /dev)

ALERT!  /dev/ram0 does not exist.  Dropping to a shell!

 

BusyBox v1.30.1 (Raspbian 1:1.30.1-4) built-in shell (ash)

Enter 'help' for a list of built-in commands.

 

(initramfs)

 

My bootargs for Dom0 defined in boot2.source (attached): "console=hvc0 earlycon=xen earlyprintk=xen clk_ignore_unused root=/dev/ram0"

When I enter “ls /dev”, ram0 exists in the initramfs.

 

It would be great If anyone could point me in the right direction. Are there some stupid mistakes I have made? Do I have to change something in the boot2.scr or is my initrd just wrong?

 

Thanks,

Maxi

Attachment: boot-log.txt
Description: Text document

Attachment: boot2.source
Description: Binary data


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.