Discussion:
[Xen-users] ARM: Xen 4.11 + modern dom0 on ODROID-XU4/HC1 (Exynos 5422)
Steve Dodd
2018-09-01 08:45:49 UTC
Permalink
Hi all,

Having successfully followed the instructions at
https://wiki.odroid.com/odroid-xu4/application_note/software/xen_virtualization
to get an old Xen and dom0 kernel working on my ODROID HC1 I'd like to
get a more modern setup working.

I managed to get the 4.11 hypervisor to boot happily with the bits of
https://github.com/bkrepo/xen/commit/8d56205455a4a1e0233421d3ee98e3c7dee20bd2
that deal with the CPU initialization (the trap/hypercall change seems
to already be a part of 4.11 in a different form.) Any chance of
getting this patch merged?

What I am completely stuck on is getting a modern dom0 working. The
handful of patches in
https://github.com/bkrepo/linux-dom0/commits/odroidxu3-3.10.y-xen seem
only to enable the relevant config options, patch the device tree with
the arch timer and "xen-dom0" passthrough section, and backport the
PSCI support which is already in 4.14, so I've tried applying these
changes to the ODROID 4.14 tree at
https://github.com/hardkernel/linux, with no success.

Using the FDT from the working 3.x dom0 with the 4.14 zImage, it boots
but doesn't seem to find any of the underlying hardware, certainly not
the USB attached SSD which I need to boot.

Using the FDT from the ODROID 4.14 tree, patched for arch timer and
the xen-dom0 section, the hypervisor sticks at "(XEN) 3..."

Unfortunately I'm not at all familiar with either Xen or the ARM
architecture, so would really appreciate it if anyone could steer me
in the right direction!

Thanks,
Steve
Julien Grall
2018-09-06 14:18:01 UTC
Permalink
Post by Steve Dodd
Hi all,
Hello Steve,
Post by Steve Dodd
Having successfully followed the instructions at
https://wiki.odroid.com/odroid-xu4/application_note/software/xen_virtualization
to get an old Xen and dom0 kernel working on my ODROID HC1 I'd like to
get a more modern setup working.
I managed to get the 4.11 hypervisor to boot happily with the bits of
https://github.com/bkrepo/xen/commit/8d56205455a4a1e0233421d3ee98e3c7dee20bd2
that deal with the CPU initialization (the trap/hypercall change seems
to already be a part of 4.11 in a different form.) Any chance of
getting this patch merged?
AFAICT the patch can be divided in two:
1) Dom0 SMC forward
While we did some work around trapping SMC, we still don't forward them
directly to the firmware. If you need to forward Dom0 SMC call to the
firmware, then we first need to know what they are used for. I would
prefer a whilelisting over forward everything (even for Dom0).
2) SMP support for Odroid-XU
This part would need to be cleaned up. We need to ensure the SMP
bring-up is still working with the other exynos platform.

Feel free to send patches on xen-devel, I would be happy to review them.
Post by Steve Dodd
What I am completely stuck on is getting a modern dom0 working. The
handful of patches in
https://github.com/bkrepo/linux-dom0/commits/odroidxu3-3.10.y-xen seem
only to enable the relevant config options, patch the device tree with
the arch timer and "xen-dom0" passthrough section, and backport the
PSCI support which is already in 4.14, so I've tried applying these
changes to the ODROID 4.14 tree at
https://github.com/hardkernel/linux, with no success.
Using the FDT from the working 3.x dom0 with the 4.14 zImage, it boots
but doesn't seem to find any of the underlying hardware, certainly not
the USB attached SSD which I need to boot.
I would not recommend to use the 3.x FDT with 4.14. Despite the DT
should be agnostic to the kernel revision, there are still often changes
binding changes.
Post by Steve Dodd
Using the FDT from the ODROID 4.14 tree, patched for arch timer and
the xen-dom0 section, the hypervisor sticks at "(XEN) 3..."
I am not entirely sure to understand why you need to patch the arch
timer. Could you send the diff of the FDT?

I would also recommend to make sure the same configuration boots without
Xen. This will tell you whether the bug is in Xen or Linux.
Post by Steve Dodd
Unfortunately I'm not at all familiar with either Xen or the ARM
architecture, so would really appreciate it if anyone could steer me
in the right direction!
I hope I provided enough details. Feel free to ask any questions.

Cheers,
--
Julien Grall
Loading...