From Fedora Project Wiki
m (1 revision(s))
(→‎Detailed Description: fix broken wiki link)
Line 37: Line 37:
== Detailed Description ==
== 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.
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 ==
== Scope ==

Revision as of 18:30, 30 June 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

  • Targeted release: Fedora 10
  • Last updated: 2008-03-17
  • Percentage of completion: 30%

Tracker bug for this feature: [1]

i386 Dom0

x86_64 Dom0

  • No active work yet....

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 for Fedora 10 :

  • 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:
  • 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:

  • 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:

  • 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