Xen ARM TODO

From Xen
Revision as of 04:20, 10 October 2014 by Rcpavlicek (talk | contribs)

This is a list of open work items and known bugs for the Xen on ARM with virtualization extension project.


In progress

Known Bugs

General

Domain 0 memory limitation due to 1:1 mapping

The use of the 1:1 workaround for dom0's memory (needed on platforms without an I/O SMMU, which is currently all) limits the maximum size of dom0. By carefully positioning the Xen and initial kernel/initrd/dtb binaries at the top of RAM dom0 is able to make use of up to 1/2 of the host RAM. The remainder is available for guest use. In general dom0 should be made quite small anyway. For more information see:

* http://lists.xen.org/archives/html/xen-devel/2013-12/msg02239.html
* http://lists.xen.org/archives/html/xen-devel/2014-01/msg00885.html

This should be addressed in a future release by supporting multiple memory banks for dom0.

Versatile Express

Arndale Board

Open Work Items

vGIC interrupt prioritisation
Contact: xen-devel@lists.xen.org
Description: Currently the vGIC only implements a very basic form of interrupt priority, in particular it is not able to preempt an inflight lower priority interrupt when a new higher priority one occurs. The emulation needs to consider the vCPUs current IAR as well as the priorities of pending and inflight interrupts.
References: Not specified, useful references.

VCPU virtual time support
Contact: xen-devel@lists.xen.org
Description: Currently the concept of virtual time exposed to the guests is very simplistic and is just a static offset from physical time based on the time when the guest was started. We need to consider if this is actually what is needed/wanted and consider cases such as stolen time etc.
References: Not specified, useful references.

IOMMU support in Xen
Contact: xen-devel@lists.xen.org
Description: write a driver in Xen for the ARM System Memory Management Unit (SMMU), use it to assign devices to Dom0.
References: In Progress: http://lists.xen.org/archives/html/xen-devel/2014-02/msg00670.html

Save/restore and migration
Contact: xen-devel@lists.xen.org
Description: Make VM save/restore and VM migration work on ARM.
References: InProgress: http://lists.xen.org/archives/html/xen-devel/2013-10/msg00192.html

Use Superpage mappings for P2M
Contact: xen-devel@lists.xen.org
Description: Currently we use 4K pages everywhere. Xen should attempt to use 2MB mappings in the P2M wherever possible.

This will have significant performance benefits.

Need to do 2MB ballooning too.
References: Not specified, useful references.

Device assignment to DomUs
Contact: xen-devel@lists.xen.org
Description: Assign one or more devices to an unprivileged guest, re-program the SMMU accordingly.
References: Not specified, useful references.

Expose Wallclock time to guests
Contact: xen-devel@lists.xen.org
Description: Current Xen on ARM does not popular the wallclock time fields of the shared info with anything useful. It should do so...
References: Not specified, useful references.

Support GIC v3
Contact: xen-devel@lists.xen.org
Description: New hardware will come with GIC v3. Currently Xen only support GIC v2
References: Not specified, useful references.

More flexible early printk support
Contact: xen-devel@lists.xen.org
Description: Allow a single Xen binary to support multiple platforms for early_printk Rather than parsing the DTB early in asm to get the command line it would probably be sufficient to have a magic hex byte at a specific offset which could be edited by a simple tool.
References: http://lists.xen.org/archives/html/xen-devel/2014-02/msg01880.html