Difference between revisions of "Archived/Xen Roadmap/4.3"

From Xen
(Status updates)
(Update based on responses to 15 Oct e-mail)
Line 16: Line 16:
 
=== Completed ===
 
=== Completed ===
 
<pre>
 
<pre>
* Linux console improvements
+
* Serial console improvements
 
-EHCI debug port
 
-EHCI debug port
   
* Default to QEMU upstream
+
* Default to QEMU upstream (partial)
 
- pci pass-thru (external)
 
- pci pass-thru (external)
  +
- enable dirtybit tracking during migration (external)
  +
  +
* CPUID-based idle (don't rely on ACPI info f/ dom0)
 
</pre>
 
</pre>
  +
  +
=== Bugs ===
  +
<pre>
  +
* xl, compat mode, and older kernels
  +
owner: ?
  +
Many older 32-bit PV kernels that can run on a 64-bit hypervisor with
  +
xend do not work when started with xl. The following work-around seems to
  +
work:
  +
xl create -p lightning.cfg
  +
xenstore-write /local/domain/$(xl domid lightning)/device/vbd/51713/protocol x86_32-abi
  +
xl unpause lightning
  +
This node is normally written by the guest kernel, but for older kernels
  +
seems not to be. xend must have a work-around; port this work-around to xl.
  +
</pre>
  +
  +
 
=== Not yet completed ===
 
=== Not yet completed ===
 
<pre>
 
<pre>
* PVH mode, domU (w/ Linux)
+
* PVH mode (w/ Linux)
 
owner: mukesh@oracle
 
owner: mukesh@oracle
status: ?
+
status (Linux): 3rd draft patches posted.
  +
status (Xen): Patches being cleaned up for submission
 
* PVH mode, dom0 (w/ Linux)
 
owner: mukesh@oracle
 
status: ?
 
   
 
* Event channel scalability
 
* Event channel scalability
Line 45: Line 61:
 
critical
 
critical
 
owner: dario@citrix
 
owner: dario@citrix
status: ?
+
status: Patches posted
   
 
* NUMA Memory migration
 
* NUMA Memory migration
Line 56: Line 72:
   
 
* Default to QEMU upstream
 
* Default to QEMU upstream
  +
> Add "intel-hda" to xmexample file, since it works with 64-bit Win7/8
 
- qemu-based stubdom (Linux or BSD libc)
 
- qemu-based stubdom (Linux or BSD libc)
 
owner: anthony@citrix
 
owner: anthony@citrix
 
status: in progress
 
status: in progress
 
qemu-upstream needs a more fully-featured libc than exists in
 
qemu-upstream needs a more fully-featured libc than exists in
minios. Either work on a minimalist linux-based stubdom with
+
mini-os. Either work on a minimalist linux-based stubdom with
 
glibc, or port one of the BSD libcs to minios.
 
glibc, or port one of the BSD libcs to minios.
 
- enable dirtybit tracking during migration (external)
 
status: patches submitted to QEMU and to LibXL.
 
   
 
- xl cd-{insert,eject} (external)
 
- xl cd-{insert,eject} (external)
Line 70: Line 84:
   
 
* Persistent grants (external)
 
* Persistent grants (external)
owner: @citrix
+
owner: roger.pau@citrix
 
status: Initial implementation posted
 
status: Initial implementation posted
   
Line 76: Line 90:
 
- blkback in kernel (konrad@oracle, ?@intel)
 
- blkback in kernel (konrad@oracle, ?@intel)
 
- qemu blkback
 
- qemu blkback
status: ?
+
status: Not started.
   
 
* Multi-page net protocol (external)
 
* Multi-page net protocol (external)
Line 87: Line 101:
 
owner: jan@suse
 
owner: jan@suse
 
status: Not started
 
status: Not started
  +
  +
* vTPM updates
  +
owner: Matthew Fioravante @ Johns Hopkins
  +
status: v2 patches submitted
  +
- Allow all vTPM components to run in stub domains for increased security
  +
- Update vtpm to 0.7.1 from 0.5.x
   
 
* libvirt/libxl integration (external)
 
* libvirt/libxl integration (external)
Line 103: Line 123:
 
owner (Linux driver): stefano.panella@citrix
 
owner (Linux driver): stefano.panella@citrix
 
status (Linux driver): in progress
 
status (Linux driver): in progress
  +
  +
* Wait queues for mm (NEW)
  +
owner: ?
  +
status: Draft posted Feb 2012; more work to do.
   
 
* xl vm-{export,import}
 
* xl vm-{export,import}
Line 110: Line 134:
 
ovf, perhaps the XenServer format, or more.
 
ovf, perhaps the XenServer format, or more.
 
 
  +
* xl PVUSB pass-through for both PV and HVM guests
  +
owner: ?
  +
status: ?
  +
xm/xend supports PVUSB pass-through to guests with PVUSB drivers (both PV and HVM guests).
  +
- port the xm/xend functionality to xl.
  +
- this PVUSB feature does not require support or emulation from Qemu.
  +
- upstream the Linux frontend/backend drivers. Current work-in-progress versions are in Konrad's git tree.
  +
- James Harper's GPLPV drivers for Windows include PVUSB frontend drivers.
   
* xl USB pass-through for PV guests
+
* xl USB pass-through for HVM guests using Qemu USB emulation
 
owner: ?
 
owner: ?
 
status: ?
 
status: ?
  +
xm/xend with qemu-traditional supports USB passthrough to HVM guests using the Qemu emulated USB controller.
- Port the xend PV pass-through functionality to xl.
 
  +
The HVM guest does not need any special drivers for this feature.
- Make sure qemu-based USB with qemu-upstream works
 
  +
So basicly the qemu cmdline needs to have:
- Upstream the Linux frontend/backend drivers
 
  +
-usb -usbdevice host:xxxx:yyyy
  +
- port the xm/xend functionality to xl.
  +
- make sure USB passthrough with xl works with both qemu-traditional and qemu-upstream.
  +
  +
* xl QXL Spice support
  +
owner: Zhou Peng
  +
status: Patches against 4.2-unstable posted, need refresh & resubmit
   
 
* openvswitch toostack integration
 
* openvswitch toostack integration
Line 126: Line 165:
 
status: ?
 
status: ?
   
* Linux console improvements
+
* Serial console improvements
 
owner: ?
 
owner: ?
  +
status: Stalled (see below)
 
-xHCI debug port (Needs hardware)
 
-xHCI debug port (Needs hardware)
 
-Firewire (needs hardware)
 
-Firewire (needs hardware)
 
* CPUID-based idle (don't rely on ACPI info f/ dom0)
 
owner: jan@suse
 
status: done, to be submitted
 
   
 
* Remove hardcoded mobprobe's in xencommons
 
* Remove hardcoded mobprobe's in xencommons
Line 168: Line 204:
 
status: ?
 
status: ?
   
  +
* IllumOS support
* Managed domains?
 
  +
owner: Igor Kozhukov
  +
status: In progress
   
  +
* Managed domains?
 
</pre>
 
</pre>
   

Revision as of 14:21, 22 October 2012

Proposed timeline

We are planning on a 9-month release cycle. Xen 4.2 was released on 17 September 2012. Based on that, below are our estimated dates:

  • Feature Freeze: 25 March, 2013
  • First RC: 6 May 2013
  • Release: 17 June 2013

The RCs and release will of course depend on stability and bugs, and will therefore be fairly unpredictable. The feature freeze may be slipped for especially important features which are near completion.

Feature list

Below is a list of features we're tracking for this release. If you have updates to a tracked feature you are working on, or are working on a feature and wish it to be tracked, please let me know.

NB: Several of the items on this list marked (external). These are not part of the Xen tree, but are directly related to our users' experience (e.g., work in Linux or qemu) or to integration with other important projects (e.g., libvirt indings). Since all of these are part of the Xen community work, and comes from the same pool of labor, it makes sense to track the progress here, even though they won't explicitly be released as part of 4.3.

Completed

* Serial console improvements
  -EHCI debug port

* Default to QEMU upstream (partial)
 - pci pass-thru (external)
 - enable dirtybit tracking during migration (external)

* CPUID-based idle (don't rely on ACPI info f/ dom0)

Bugs

* xl, compat mode, and older kernels
  owner: ?
  Many older 32-bit PV kernels that can run on a 64-bit hypervisor with
  xend do not work when started with xl.  The following work-around seems to
  work:
    xl create -p lightning.cfg
    xenstore-write /local/domain/$(xl domid lightning)/device/vbd/51713/protocol x86_32-abi
    xl unpause lightning
  This node is normally written by the guest kernel, but for older kernels
  seems not to be.  xend must have a work-around; port this work-around to xl.


Not yet completed

* PVH mode (w/ Linux)
  owner: mukesh@oracle
  status (Linux): 3rd draft patches posted.  
  status (Xen): Patches being cleaned up for submission

* Event channel scalability
  owner: attilio@citrix
  status: initial design proposed
  Increase limit on event channels (currently 1024 for 32-bit guests,
  4096 for 64-bit guests)

* ARM server port
  owner: ijc@citrix
  status: Core hypervisor patches accepted; Linux paches pending

* NUMA scheduler affinity
  critical
  owner: dario@citrix
  status: Patches posted

* NUMA Memory migration 
  owner: dario@citrix
  status: ?

* blktap3 
  owner: thanos@citrix
  status: in progress

* Default to QEMU upstream
 > Add "intel-hda" to xmexample file, since it works with 64-bit Win7/8
 - qemu-based stubdom (Linux or BSD libc)
   owner: anthony@citrix
   status: in progress
   qemu-upstream needs a more fully-featured libc than exists in
   mini-os.  Either work on a minimalist linux-based stubdom with
   glibc, or port one of the BSD libcs to minios.

 - xl cd-{insert,eject} (external)
   status: intilal implementation submitted

* Persistent grants (external)
  owner: roger.pau@citrix
  status: Initial implementation posted

* Multi-page blk rings (external)
 - blkback in kernel (konrad@oracle, ?@intel)
 - qemu blkback
  status: Not started.

* Multi-page net protocol (external)
  owner: ijc@citrix or annie.li@oracle
  status: Initial patches posted (by Wei Liu)
  expand the network ring protocol to allow multiple pages for
  increased throughput

* Scalability: 16TiB of RAM
  owner: jan@suse
  status: Not started

* vTPM updates
  owner: Matthew Fioravante @ Johns Hopkins
  status: v2 patches submitted
  - Allow all vTPM components to run in stub domains for increased security
  - Update vtpm to 0.7.1 from 0.5.x

* libvirt/libxl integration (external)
 - Migration
   owner: cyliu@suse (?)
   status: first draft implemented, not yet submitted
 - Itemize other things that need work
   To begin with, we need someone to go and make some lists:
   - Features available in libvirt/KVM not available in libvirt/libxl
     See http://libvirt.org/hvsupport.html
   - Features available in xl/Xen but not available in libvirt/Xen

* V4V: Inter-domain communication
  owner (Xen): jean.guyader@citrix.com
  status (Xen): patches submitted
  owner (Linux driver):  stefano.panella@citrix
  status (Linux driver): in progress

* Wait queues for mm (NEW)
  owner: ?
  status: Draft posted Feb 2012; more work to do.

* xl vm-{export,import}
  owner: ?
  status: ?
  Allow xl to import and export VMs to other formats; particularly
  ovf, perhaps the XenServer format, or more.
  
* xl PVUSB pass-through for both PV and HVM guests
  owner: ?
  status: ?
  xm/xend supports PVUSB pass-through to guests with PVUSB drivers (both PV and HVM guests).
  - port the xm/xend functionality to xl.
  - this PVUSB feature does not require support or emulation from Qemu.
  - upstream the Linux frontend/backend drivers. Current work-in-progress versions are in Konrad's git tree.
  - James Harper's GPLPV drivers for Windows include PVUSB frontend drivers.

* xl USB pass-through for HVM guests using Qemu USB emulation
  owner: ?
  status: ?
  xm/xend with qemu-traditional supports USB passthrough to HVM guests using the Qemu emulated USB controller.
  The HVM guest does not need any special drivers for this feature.
  So basicly the qemu cmdline needs to have:
     -usb -usbdevice host:xxxx:yyyy
  - port the xm/xend functionality to xl.
  - make sure USB passthrough with xl works with both qemu-traditional and qemu-upstream.

* xl QXL Spice support
  owner: Zhou Peng
  status: Patches against 4.2-unstable posted, need refresh & resubmit

* openvswitch toostack integration
  owner: roger@citrix
  status: Sample script posted by Bastian ("[RFC] openvswitch support script")

* Rationalized backend scripts (incl. driver domains)
  owner: roger@citrix
  status: ?

* Serial console improvements
  owner: ?
  status: Stalled (see below)
  -xHCI debug port (Needs hardware)
  -Firewire (needs hardware)

* Remove hardcoded mobprobe's in xencommons
  owner: ?
  status: ?

* Make storage migration possible
  owner: ?
  status: ?
  There needs to be a way, either via command-line or via some hooks,
  that someone can build a "storage migration" feature on top of libxl
  or xl.

* Full-VM snapshotting
  owner: ?
  status: ?
  Have a way of coordinating the taking and restoring of VM memory and
  disk snapshots.  This would involve some investigation into the best
  way to accomplish this.

* VM Cloning
  owner: ?
  status: May need review
  Again, a way of coordinating the memory and disk aspects.  Research
  into the best way to do this would probably go along with the
  snapshotting feature.

* Memory: Replace PoD with paging mechanism
  owner: george@citrix
  status: May need review

* PV audio (audio for stubdom qemu)
  owner: stefano.panella@citrix
  status: ?

* IllumOS support
  owner: Igor Kozhukov
  status: In progress

* Managed domains?