From Fedora Project Wiki
No edit summary
(upstream is not stalled, linked to upstream status)
Line 15: Line 15:
== Current status ==
== Current status ==
* Targeted release: Unknown
* Targeted release: Unknown
 
* Upsteam status: http://wiki.xensource.com/xenwiki/XenParavirtOps
Work on getting Dom0 support in the upstream kernel has pretty much stalled for the last number of months so this feature is postponed until work upstream restarts.
* Latest pv_ops dom0 patches: http://xenbits.xen.org/paravirt_ops/patches.hg/
 
[[Releases/10|  Fedora 10]] will ship with Xen i686 and x86_64 DomU support enabled in the stock kernel - i.e. there is no more kernel-xen.
 
* Last updated: 2008-07-30
* Last updated: 2008-07-30
* Percentage of completion: 30%
* Percentage of completion: 30%


[[Releases/10|  Fedora 10]] shipped with Xen i686 and x86_64 DomU support enabled in the stock kernel - i.e. there is no more kernel-xen.
Tracker bug for [[Releases/10|  Fedora 10]] Xen kernel work : [https://bugzilla.redhat.com/show_bug.cgi?id=F10_XenPvOps]  
Tracker bug for [[Releases/10|  Fedora 10]] Xen kernel work : [https://bugzilla.redhat.com/show_bug.cgi?id=F10_XenPvOps]  


Line 37: Line 35:


=== x86_64 Dom0 ===
=== x86_64 Dom0 ===
* No active work yet....


== Detailed Description ==
== Detailed Description ==

Revision as of 22:21, 25 November 2008

Feature Name

Summary

Dom0 support for pvops-based kernel-xen .

Owner

  • Name: EduardoHabkost, MarkMcLoughlin

Others involved: Stephen Tweedie, Chris Wright, Juan Quintela, Markus Armbruster, Glauber Costa, DanielBerrange, ...

Current status

Fedora 10 shipped with Xen i686 and x86_64 DomU support enabled in the stock kernel - i.e. there is no more kernel-xen. Tracker bug for Fedora 10 Xen kernel work : [1]

i386 Dom0

x86_64 Dom0

Detailed Description

See Features/XenPvops for a rationale. This feature just continues to paravirt_ops Xen effort to bring it back to feature parity with Fedora 8 Xen.

Scope

Work items:

  • Clean up and finish Dom0 boot patches (StephenTweedie, JuanQuintela, MarkMcLoughlin)
    • Backend drivers blkback/blktap and netback requiring: (StephenTweedie, JuanQuintela, MarkMcLoughlin)
    • Some ballooning bits
    • Foreign pages (i.e. PAGE_FOREIGN and VM_FOREIGN)
    • zap_pte()
    • Grant table ops
    • Save / restore
    • Memory ballooning
  • x86_64: (DONE)
    • Latest x86.git has useful patches on paravirt_ops pagetable handling
    • ia32 emulation support
    • SMP support
    • Debug other problems that may appear
    • Cleanup of code for inclusion upstream
    • Some code need to be changed to be enabled at runtime if running under xen, instead of being enabled at compile time (pvops infra-structure may need to be extended to make it possible, on some cases)

Merged kernel: (DONE)

  • Merge kernel-xen into 'kernel' RPM (MarkMcLoughlin)
  • Make bzImage bootable so the same kernel can boot on Xen and bare-metal
    • Patches for DomU bzImage boot are in xen-unstable and x86.git
    • Adding Dom0 bzImage boot to the HV is a bit harder
  • Remove images/xen/{initrd,vmlinux} from install trees (JeremyKatz ?)
  • Make 'new-kernel-pkg' aware of HYPERVISOR setting in /etc/sysconfig/xen (DanielBerrange)
  • Make virt-install use images/pxeboot/{initrd,vmlinux} for DomU installs (DanielBerrange)
  • Make 'xen' SRPM build a xen-hypervisor containing the HV (DanielBerrange)

Nice to have:

  • CPU hotplug
  • Migration support
  • 32-on-64 support (both DomU and Dom0)
  • LiveCD with pvops enabled kernel as DomU ?
  • Kexec on pvops dom0

Unlikely to get: (ie feature regressions)

  • PCI device passthrough to DomU

Finished items:

  • x86_64 support upstream (see above)
  • Merged kernel (see above)
  • First-cut of Dom0 boot (StephenTweedie, JuanQuintela, MarkMcLoughlin)
  • ACPI
  • ioremap
  • IRQ routing
  • DMA/contiguous pages
  • MTRR
  • privcmd interface, other /proc/xen bits, /sys/hypervisor, /dev/evtchn (MarkMcLoughlin)

Test Plan

  • Install a Fedora 10 host/Dom0 system
  • Turn on Xen Hypervisor by setting 'HYPERVISOR=/boot/xen-3.2.gz' in /etc/sysconfig/kernel and running some tool (TBD)
  • Turn on Xen Userspace by running 'chkconfig xend on'
  • Reboot
  • Observe presence of Xen via /sys/hypervisor/
  • Run 'xm list' and observe Domain-0
  • Use virt-install to deploy a Fedora 9/10 paravirt guest
  • Use virt-install to deploy a Fedora 8 paravirt guest
  • Use virt-install to deploy a Fedora 8 fullyvirt guest
  • Use 'virsh' to save & restore a PV guest and HVM guest
  • Balloon down memory of a guest with virsh.

User Experience

  • Xen-ified kernel has same version as bare metal kernel
  • All kernel updates support Xen
  • All hardware that works in baremetal works in Xen Dom0
  • No separate kernel RPM required for Xen DomU or Dom0
  • Can enable/disable use of HV via a /etc/sysconfig setting

Dependencies

  • Update to anaconda to not build a 'images/xen/' directory anymore
  • Update to 'new-kernel-pkg' to know how to install HV

Contingency Plan

If Dom0 support is still not ready for Fedora 10 GA, the options are:

  • Continue to ship with only DomU support
  • Drop Xen support altogether

Documentation

Release Notes