Changes/Virt ARM on x86

From FedoraProject

< Changes
Revision as of 15:50, 10 February 2014 by Crobinso (Talk | contribs)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search


ARM on x86 with libvirt/virt-manager


Fix running ARM VMs on x86 hosts using standard libvirt tools libvirt virsh, virt-manager and virt-install.


Current status

Detailed Description

qemu has an ARM emulator that works well and is actively used in the Fedora ARM effort. However libvirt and virt-manager currently have issues launching qemu-system-arm VMs, mostly by encoding x86 assumptions in the generated command line that cause qemu-system-arm to fail to start. Let's fix it!

Benefit to Fedora

  • ARM developers can now use virt-manager/libvirt to manage ARM VMs without having to hack around it
  • Fedora QA can use standard tools to test ARM in its bid for Primary Architecture
  • Packagers who want to do ARM work can use standard virt tools to run ARM VMs.
  • Enthusiasts who want to try out the Fedora ARM spin can use standard tools to try it in a VM.


  • Proposal owners:
  1. Fix issues in libvirt with generating qemu-system-arm command lines:
    • Fix launching vexpress-a9 (DONE)
    • Support virtio-mmio to enable virtio for vexpress (DONE)
    • TODO: vexpress-a15 support? need to figure out the correct qemu+fedora incantation
  2. virt-install support (DONE, see docs)
  3. virt-manager support
    • Basic setup support (DONE, see docs)
    • Improve the 'Create VM' wizard to handle the ARM case better (DONE)
  4. TODO: Figure out how to actually install a new ARM VM and not depend on pre-installed images.
  5. TODO: Figure out why graphical setup is busted

Upgrade/compatibility impact

N/A (not a System Wide Change)

How To Test

User Experience

N/A (not a System Wide Change)


N/A (not a System Wide Change)

Contingency Plan

  • Contingency mechanism: N/A (not a System Wide Change)
  • Contingency deadline: N/A (not a System Wide Change)
  • Blocks release? N/A (not a System Wide Change)


Example of how to kick off a guest:

Release Notes

ARM VMs can now be run on x86 hosts using standard libvirt tools like virsh, virt-manager, and virt-install.