[Spice-devel] multi-clients issue

Alon Levy alevy at redhat.com
Sun Dec 23 13:58:59 PST 2012

On Wed, Dec 19, 2012 at 01:05:04PM +0800, Rozen Lin wrote:
> Hi,All,
>   Currently I'm trying the multi-client feature of spice, the server
> side is spice-server-0.10 and qemu-kvm-1.1, if I use only from Linux
> machine the spicec-0.10 or spice-gtk-0.10 as clients, the multi-clients
> works fine,
> but if I use the old version(e.g. spicec-0.6) spicec-win32 or newest
> virt-viewer-0.5.3 from windows machine, the qemu-kvm will assert in
> spice-server such as:
> red_worker.c: free_one_drawable(RedWorker *worker, int force_glz_free)
> {
> ..
>   ASSERT(ring_item);
> ...
> }
>   I know the multi-clients is only experimental, but I have to try such
> feature from Windows machine, so would anyone share some clues to
> resolve/workaround for this, thanks in advance!

This is expected. It happens whenever one client's pipe grows large
enough to exhaust the preallocated (and never reallocated) list of
drawables (Drawable). Note that just reallocating will result in
unbounded memory usage, but might be a quick fix depending on how much
the network / resources vary for the clients (i.e. even on a single
machine if one client is starved for cpu it's pipe will grow until it
wakes up). The real solution is to "compress"/rewrite the pipe for one
client in a way that ensures we cap the total number of drawables and
more importantly total amount of memory. Still TBD.
> _______________________________________________
> Spice-devel mailing list
> Spice-devel at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/spice-devel

More information about the Spice-devel mailing list