Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
vm_minimal, QEMU: block aarch32 build
The QEMU/aarch32 platform is not supported actively at the moment for virtualization. Signed-off-by: Axel Heider <[email protected]>
- Loading branch information
977022b
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Oh boy, so with this change (or maybe with the change that caused this to have to be implemented), you have to initialize the qemu-arm-virt build with -DAARCH64=1 in order to get the qemu-arm-virt examples to work. That's about an hour of my life I want back :-)
Example to get vm_minimal working:
$ cd build $ ../init-build.sh -DCAMKES_VM_APP=vm_minimal -DPLATFORM=qemu-arm-virt -DAARCH64=1 $ ninja $ ./simulate
I feel like a hint on the main git page should be added for this or a hint to the compilation error?
Anyways hopefully this saves someone else some time in the future.
977022b
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
You're right, at least an example and explanation in the docs for
qemu-arm-virt
would be good. If that was mentioned in the camkes-vm-examples repo README, would you have found it there or did you get here by another path?977022b
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
TL;DR: I think mentioning it in the notes column in the ARM Features table in the camkes-vm-examples repo README would be sufficient.
Honestly I'm coming back to seL4 for a new project after a few years away and I was doing the tutorials. Well I got to the cross vm tutorial, I remembered it was broken because y'all switched from a character device to a userspace IO device. I went to compile the cross-vm for qemu-arm-virt and it page faulted... which I thought was weird so I tried vm_minimal and it page faulted as well. After some investigation I saw that the default processor was getting set to something like a A15 and that if I set the AARCH64 switch it would use an A53.
Then all of a sudden this commit made a lot more sense to me. Anyways, there's an arguement to be made that this is why vm_minimal64 exists... but then that would break all of the other examples. So I think adding a note in bold in the ARM Features table for QEMU is the way to go.