Difference between revisions of "Xen Kernel Feature Matrix"

From Xen
(Xen Kernel Integration: Merge info from Dom0 Kernel Versions)
m (Get rid of the duplicated header, clean up broken link & remove paragraph about submitting new info to the xen-dev mailing list)
Line 1: Line 1:
<!-- MoinMoin name: XenKernelFeatures -->
 
<!-- Comment: -->
 
<!-- WikiMedia name: XenKernelFeatures -->
 
<!-- Page revision: 00000055 -->
 
<!-- Original date: Wed Oct 26 19:08:21 2011 (1319656101000000) -->
 
 
__NOTOC__
 
= Xen Kernel Features =
 
 
This page lists various features supported by different Xen enabled Linux kernels.
 
This page lists various features supported by different Xen enabled Linux kernels.
   
Line 32: Line 24:
 
pvops ''dom0'' support is included in the upstream (2.6.37 and higher) Linux kernel.
 
pvops ''dom0'' support is included in the upstream (2.6.37 and higher) Linux kernel.
   
For details please read [[[XenParavirtOps]]].
+
For details please read [[XenParavirtOps]].
   
 
Some help and tips for migrating from linux-2.6.18 to pvops dom0 kernel available from this wiki page: [[Migrate_from_Linux_2.6.18_to_2.6.31_and_higher]]
 
Some help and tips for migrating from linux-2.6.18 to pvops dom0 kernel available from this wiki page: [[Migrate_from_Linux_2.6.18_to_2.6.31_and_higher]]
Line 360: Line 352:
 
| x
 
| x
 
|}
 
|}
If you find mistakes or missing features from this page please send an email to xen-users or xen-devel mailinglists!
 
 
To subscribe to xen-users mailinglist check: http://lists.xensource.com/mailman/listinfo/xen-users/ . xen-users mailinglist archives can be found from: http://lists.xensource.com/archives/html/xen-users/
 
   
 
[[Category:Users]]
 
[[Category:Users]]

Revision as of 02:46, 12 December 2011

This page lists various features supported by different Xen enabled Linux kernels.

[Updated Oct 26th 2011]

Xen Kernel Integration

There are two ways to get to a Xen enabled Linux kernel. The old Xenlinux and the newer pvops.

Xenlinux

Historically Xen-Linux-Integration was first developed separate from the Linux kernel and resulted in a set of patches that had to be applied to the vanilla kernel.

Those are the Xen patches from the 'original' linux-2.6.18-xen repository from xen.org. Some distros have these 2.6.18 patches forward-ported to newer kernels, most notably SLES/OpenSUSE. These patches are sometimes referred as "Xenified" patches.

This was the default dom0 kernel in all Xen 3.x releases, up to and including Xen 3.4.x.

pvops

Paravirt_ops is the upstream Linux framework for running Linux paravirtualized on a hypervisor (Xen). pvops is included in the mainline/standard Linux kernel. This is the new style of Xen support, rewritten to be acceptable to upstream Linux kernel. pv_ops kernels require Xen >= 4.0.

pvops domU support in the standard Linux kernel has started with 2.6.24 and anything newer than 2.6.32.10 should be fairly complete and stable for most use cases.

pvops dom0 support is included in the upstream (2.6.37 and higher) Linux kernel.

For details please read XenParavirtOps.

Some help and tips for migrating from linux-2.6.18 to pvops dom0 kernel available from this wiki page: Migrate_from_Linux_2.6.18_to_2.6.31_and_higher

Features explained

  • backend driver = driver required in the Xen dom0 kernel
  • frontend driver = driver required in the Xen domU guest kernel
  • pciback and pcifront = drivers required for PCI passthrough. These drivers are not related to using PCI devices in dom0!
  • usbback and usbfront = drivers required for USB passthrough. These drivers are not related to using physical usb devices in dom0!
  • scsiback and scsifront = drivers required for PVSCSI passthrough. These drivers are not related to using SCSI devices in dom0!

See XenDom0Kernels wiki page for more information about the various kernels and for instructions where to get them.

Links to more information about various features:

NOTE! This wiki page is updated when new features are developed/ported, so remember to check back here every now and then!

List of Xen kernel source trees/repositories:

  1. xen.org linux-2.6.18-xen (Xenlinux)
  2. Citrix Xen-Server / Xen Cloud Platform (XCP) Linux 2.6.27 and 2.6.32 (Xenlinux)
  3. Novell SLES11 SP1 Linux 2.6.32 forward-ported patches by Andrew Lyon (Xenlinux)
  4. kernel.org Jeremy's xen.git xen/stable-2.6.32.x (pvops)
  5. kernel.org Linus vanilla/mainline Linux 2.6.32 - 2.6.35 (pvops)
  6. kernel.org Linus vanilla/mainline Linux 2.6.36 (pvops)
  7. kernel.org Linus vanilla/mainline Linux 2.6.37 (pvops)
  8. kernel.org Linus vanilla/mainline Linux 3.1.0 (pvops)

Source tree features:

1 2 3 4 5 6 7
Xen PV domU (guest) support (including blkfront, netfront frontend drivers) x x x x x x x
Xen dom0 support (including blkback, netback backend drivers) x x x x
blktap1 backend driver x x x
blktap2 backend driver x x x x
pciback backend driver x x x x
pcifront frontend driver x x x x x
pvscsi backend driver x x x
pvscsi frontend driver x x x
pvusb backend driver x x
pvusb frontend driver x x
pv-on-hvm (pvhvm) drivers for hvm Linux guests x x x x x
blkfront vbd (guest xvd disk) online resize x x x x x

List of binary Xen kernels included in Linux distributions:

  1. Redhat RHEL5 kernel-xen Linux 2.6.18 (Xenlinux)
  2. Novell SLES10 Linux 2.6.16 (Xenlinux)
  3. Novell SLES11 Linux 2.6.27 (Xenlinux)
  4. Novell SLES11 SP1 Linux 2.6.32 (Xenlinux)
  5. Debian Etch Linux 2.6.18-6-xen (Xenlinux)
  6. Debian Lenny Linux 2.6.26-2-xen (Xenlinux)
  7. Debian Lenny Linux 2.6.26-2-686-bigmem (pvops)
  8. Debian Squeeze Linux 2.6.32-xen (pvops dom0 capable)
  9. Debian Squeeze Linux 2.6.32-amd64 and -686-bigmem (pvops)
  10. Fedora 12 Linux 2.6.32, Fedora 13 Linux 2.6.33 (pvops)
  11. Redhat RHEL6 Linux 2.6.32
  12. Fedora Core 16 and Ubuntu 11.10 (pvops, 3.0 kernel)
1 2 3 4 5 6 7 8 9 10 11
Xen PV domU (guest) support (including blkfront, netfront frontend drivers) x x x x x x x x x x x
Xen dom0 support (including blkback, netback backend drivers) x x x x x x x
blktap1 backend driver x x x x x x
blktap2 backend driver x x
pciback backend driver x x x x x x x
pcifront frontend driver x x x x x x x
pvscsi backend driver x
pvscsi frontend driver x
pvusb backend driver x
pvusb frontend driver x
pv-on-hvm drivers for hvm linux guests x x x x x