[Spice-devel] Status of 0.6 release

Alexander Larsson alexl at redhat.com
Mon Jul 5 02:44:36 PDT 2010


We're now two weeks from the 0.6 feature freeze as per:
http://www.spice-space.org/page/Releases/SpiceZeroPointSix

I think its time to figure out the current status so that we're focusing
on the right things the following two weeks.

Lets first start with the proposed feature list for the release:

* Qemu integration

We have a new qemu repository, based on the current upstream version,
with clean patch-series using a new, nicer spice API. Patches have been
posted upstream at least for the initial integration (no qxl device
support yet though). There has been any feedback yet though, so its hard
to judge the status here. Will it be possible to get this merged?

* Surfaces

This has landed and seems to generally work. The dependency calculations
for surfaces is a bit lax atm due to a bug in the UPDATE_AREA_BY_TREE
code in red_worker.c, so might not be as efficient as possible. However,
generally this seems to work.

* Marshalling layer for compatability

We're now using the (de)marshalling layer for almost everything. The
tunnel channel has not been ported yet to the new marshaller, but we're
not sure exactly if and how tunneling should work anyway, so its not a
real problem.

* PCI compatibility layer

We've landed most of this, however there are still a few items left to
do before we can remove all use of draw.h from the qxl users and make
the spice types internal. Missing types are: SpiceCursorHeader,
SpiceImageDescriptor, SpiceBitmap, SpiceQUICData, SpiceSurface. When
these are done we also need to move the draw.h header from
spice-protocol to spice/common and remove the packed attributes.

Also, when the image types are internalized we can do some changes to
the demarshalling of them to avoid unnecessary copying of image data.

* Improved support for WAN

We have landed support for lossy compression (jpeg) and lz compression
of glz images, for low bandwidth mode. We need to add some command line
arguments to allow this to be enabled/tuned. This is a good basis for
wan support, but needs ongoing measurements, tuning and tweaking.

* Cut and paste between client and guest

This has not landed yet. Arnon has been working on this and is now
cleaning it up and testing it. We need to ensure that this happens
before July 19th to hit the feature freeze.


There are also some other things we need to look at:

* New agent implementation

We have a new agent implementation using virtio rather than a custom
protocol. I believe the new qemu repositiory has the qemu side code for
this and i don't think the spice side needs any changes. Right?

However, we don't have a new win32 agent upstream yet, do we? And is the
win32 virtio driver availible somewhere yet? Need to ensure this all
happens. Alon, what is the status here?

* Live migration

With the new qemu stuff we've lost live migration. This would be very
good to get back. I don't know the status of this and what blocks it.
Gerd, what is the status here?

* Making upstream easier to build

We've removed the forked qcairo and qpixman, dropped the dependency on
ffmpeg, made opengl and cegui optional. We've also split out the
required headers from spice into spice-protocol so that drivers etc can
build without a spice dependency. This all makes the upstream spice much
easier to build, which should hopefully mean more contributors, etc.

I don't think we have any more outstanding work here. Do we?

* Network protocol changes

We've bumped the major to 2 (well, atm it a high unstable number, but it
will be 2 after the freeze). With this we've done a bunch of changes to
the network protocol, like changing offsets to 32bit, and avoiding to
send unused parts of messages, made enum fields smaller, and dropped
unused clip paths and some line attributes. There are some outstanding
changes here to avoid using offsets in more places that await the
finishing of the pci compat layer.

This is our one chance to remove stuff from the protocol though. We need
to go through everything looking for if there is anything more to change
before we freeze. Can people please look for things that could be
better.

* Migration from 0.4 to 0.6

This is not possible atm. Is it doable? Is it interesting? Opinions?

-- 
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
 Alexander Larsson                                            Red Hat, Inc 
       alexl at redhat.com            alexander.larsson at gmail.com 
He's a fiendish umbrella-wielding hairdresser with a winning smile and a way 
with the ladies. She's a strong-willed wisecracking Valkyrie who believes she 
is the reincarnation of an ancient Egyptian queen. They fight crime! 



More information about the Spice-devel mailing list