From Fedora Project Wiki
(→‎Current status: update status and add several links)
Line 1: Line 1:
 
= Feature Name =
 
= Feature Name =
 
 
  
 
== Summary ==
 
== Summary ==
Line 9: Line 7:
 
== Owner ==
 
== Owner ==
  
* Name: EduardoHabkost, MarkMcLoughlin
+
* Name: None
  
Others involved: Stephen Tweedie, Chris Wright, Juan Quintela, Markus Armbruster, Glauber Costa, DanielBerrange, ...
+
Previously involved: EduardoHabkost, MarkMcLoughlin, Stephen Tweedie, Chris Wright, Juan Quintela, Markus Armbruster, Glauber Costa, DanielBerrange, ...
  
 
== Current status ==
 
== Current status ==
* Last updated: 2008-11-25
+
* Last updated: 2008-11-26
* Percentage of completion: 30%
+
* Percentage of completion: 0%
 
* Targeted release: Unknown
 
* Targeted release: Unknown
* Status:  
+
* Fedora 10 shipped 2008-11-25 with Xen i686 and x86_64 DomU support enabled in the stock kernel.
 +
* Dom0 status: awaiting upstream kernel support
 +
* Background:
 
: [http://wiki.xensource.com/xenwiki/XenParavirtOps  upstream status], [http://xenbits.xen.org/paravirt_ops/patches.hg/  latest pv_ops dom0 patches]
 
: [http://wiki.xensource.com/xenwiki/XenParavirtOps  upstream status], [http://xenbits.xen.org/paravirt_ops/patches.hg/  latest pv_ops dom0 patches]
 
: [[FWN/Issue152#Status_of_dom0_Support_in_Upstream_Kernel|FWN #152]], [[FWN/Issue146#No_Dom0_Support_in_Fedora_10|FWN #146]], [[FWN/Issue137#State_of_Xen_in_Upstream_Linux|FWN #137]]
 
: [[FWN/Issue152#Status_of_dom0_Support_in_Upstream_Kernel|FWN #152]], [[FWN/Issue146#No_Dom0_Support_in_Fedora_10|FWN #146]], [[FWN/Issue137#State_of_Xen_in_Upstream_Linux|FWN #137]]
* Tracker bug {{bz|F10_XenPvOps}} for [[Releases/10 | Fedora 10]]
+
: [http://lists.xensource.com/archives/html/xen-devel/2008-02/msg00047.html old status #1], [http://lists.xensource.com/archives/html/xen-devel/2008-02/msg00242.html old status #2]
* Fedora 10 shipped 2008-11-25 with Xen i686 and x86_64 DomU support enabled in the stock kernel.
 
 
 
=== i386 Dom0 ===
 
 
 
* Not yet in rawhide {{package|kernel}}
 
* Boots, though bare metal is now non-functional until hacks are cleaned up
 
* DMA (and thus real hardware drivers) working (if it doesn't straddle page boundaries)
 
* Core needs major cleanup
 
* Status at  http://lists.xensource.com/archives/html/xen-devel/2008-02/msg00047.html
 
* http://lists.xensource.com/archives/html/xen-devel/2008-02/msg00242.html
 
* No backend drivers yet
 
* Conflicts with x86_64 DomU patches
 
 
 
=== x86_64 Dom0 ===
 
  
 
== 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 the paravirt_ops Xen effort to bring it back to feature parity with Fedora 8 Xen.
  
 
== Scope ==
 
== Scope ==
Line 44: Line 30:
 
Work items:
 
Work items:
  
* Clean up and finish Dom0 boot patches (StephenTweedie, JuanQuintela, MarkMcLoughlin)
+
* Implement Dom0 support in upstream kernel (JeremyFitzhardinge)
** Backend drivers blkback/blktap and netback requiring: (StephenTweedie, JuanQuintela, MarkMcLoughlin)
+
* Allow the hypervisor to boot bzImage kernels
** Some ballooning bits
+
* Make 'new-kernel-pkg' aware of HYPERVISOR setting in /etc/sysconfig/xen
** Foreign pages (i.e. PAGE_FOREIGN and VM_FOREIGN)
+
* Wait for that upstream kernel version to be pulled into Fedora
** 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)
 
  
 
== How To Test ==
 
== How To Test ==
  
* Install a Fedora 10 host/Dom0 system
+
* Install a Fedora 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 Hypervisor by setting 'HYPERVISOR=/boot/xen-3.3.gz' in /etc/sysconfig/kernel and running some tool (TBD)
 
* Turn on Xen Userspace by running 'chkconfig xend on'
 
* Turn on Xen Userspace by running 'chkconfig xend on'
 
* Reboot
 
* Reboot
Line 105: Line 45:
 
* Use virt-install to deploy a Fedora 9/10 paravirt guest
 
* 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 paravirt guest
* Use virt-install to deploy a Fedora 8 fullyvirt guest
+
* Use virt-install to deploy a Fedora 8/9/10 fullyvirt guest
 
* Use 'virsh' to save & restore a PV guest and HVM guest
 
* Use 'virsh' to save & restore a PV guest and HVM guest
 
* Balloon down memory of a guest with virsh.
 
* Balloon down memory of a guest with virsh.
Line 111: Line 51:
 
== User Experience ==
 
== User Experience ==
  
* Xen-ified kernel has same version as bare metal kernel
+
* Stock Fedora kernel supports Xen
* All kernel updates support Xen
+
* The Xen kernel does not lag behind the Fedora kernel
* All hardware that works in baremetal works in Xen Dom0
+
* All features and hardware supported on baremetal also works on Xen Dom0
* No separate kernel RPM required for Xen DomU or Dom0
 
 
* Can enable/disable use of HV via a /etc/sysconfig setting
 
* Can enable/disable use of HV via a /etc/sysconfig setting
  
 
== Dependencies ==
 
== Dependencies ==
  
* Update to anaconda to not build a 'images/xen/' directory anymore
 
 
* Update to 'new-kernel-pkg' to know how to install HV
 
* Update to 'new-kernel-pkg' to know how to install HV
  
 
== Contingency Plan ==
 
== Contingency Plan ==
  
If Dom0 support is still not ready for Fedora 10 GA, the options are:
+
If Dom0 support is not ready, continue the status quo of only shipping with DomU support.
 
 
* Continue to ship with only DomU support
 
* Drop Xen support altogether
 
  
 
== Documentation ==
 
== Documentation ==

Revision as of 09:24, 26 November 2008

Feature Name

Summary

Dom0 support for pvops-based Package-x-generic-16.pngkernel to support hosting of Xen guests which has been lacking since Fedora 8.

Owner

  • Name: None

Previously involved: EduardoHabkost, MarkMcLoughlin, Stephen Tweedie, Chris Wright, Juan Quintela, Markus Armbruster, Glauber Costa, DanielBerrange, ...

Current status

  • Last updated: 2008-11-26
  • Percentage of completion: 0%
  • Targeted release: Unknown
  • Fedora 10 shipped 2008-11-25 with Xen i686 and x86_64 DomU support enabled in the stock kernel.
  • Dom0 status: awaiting upstream kernel support
  • Background:
upstream status, latest pv_ops dom0 patches
FWN #152, FWN #146, FWN #137
old status #1, old status #2

Detailed Description

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

Scope

Work items:

  • Implement Dom0 support in upstream kernel (JeremyFitzhardinge)
  • Allow the hypervisor to boot bzImage kernels
  • Make 'new-kernel-pkg' aware of HYPERVISOR setting in /etc/sysconfig/xen
  • Wait for that upstream kernel version to be pulled into Fedora

How To Test

  • Install a Fedora host/Dom0 system
  • Turn on Xen Hypervisor by setting 'HYPERVISOR=/boot/xen-3.3.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/9/10 fullyvirt guest
  • Use 'virsh' to save & restore a PV guest and HVM guest
  • Balloon down memory of a guest with virsh.

User Experience

  • Stock Fedora kernel supports Xen
  • The Xen kernel does not lag behind the Fedora kernel
  • All features and hardware supported on baremetal also works on Xen Dom0
  • Can enable/disable use of HV via a /etc/sysconfig setting

Dependencies

  • Update to 'new-kernel-pkg' to know how to install HV

Contingency Plan

If Dom0 support is not ready, continue the status quo of only shipping with DomU support.

Documentation

Release Notes

Comments and Discussion