[Spice-devel] Spice agent and LXC

Christophe Fergeau cfergeau at redhat.com
Tue Nov 25 02:36:32 PST 2014


Hey,

I'm not really familiar with Xspice, and never tried what you are trying
to achieve, a few pointers though which you may already have found.

On Sat, Nov 22, 2014 at 06:30:46AM -0600, Charles Ricketts wrote:
> I've been surfing and source diving and now I'm all wet! I just
> discovered LXC a couple days ago after having been a Qemu fan for years.
> I really like the idea behind it and it seems to be far better on
> resources! However, I wanted to get the same kind of user experience out
> of these LXC containers as I get with Qemu+Spice. Getting Spice running
> in the first place was a pretty simple task (once I learned my way
> around Fedora a bit). However, I've been pounding my head against the
> wall for almost a whole day trying to get the agent to work correctly.
> I'm working with Xspice for this setup as it's really my only option I
> think.
> 
> I need a little information from you guys as I don't understand the
> Spice protocol all too well and looking at source only gives me the gist
> of what's going on rather than the specifics due to my lack of knowledge.
> 
> I've tried so many things to get this working, yet nothing I try seems
> to work. All of my work has been based around the idea that Qemu in a
> normal Spice setup just relays information between a network socket and
> its virtualization of a serial port. The Spice client sends to the
> network port, and Qemu writes that to the virtual serial buffer for the
> guest agent to read. Likewise, the agent writes to the virtual serial
> buffer and it gets relayed through the network port by Qemu. Is this
> correct? Also, if I'm not mistaken, Xspice is made to replace that
> functionality: it opens a network port for a client and talks to the
> agent(s).
> 
> In Linux systems, a Spice VirtIO serial port gets mapped to
> /dev/virtio-serial/com.redhat.spice.0 -> ../vport1p1. I attempted to
> replicate this with my LXC container by using `mknod -m 600
> /dev/vport1p1 c 181 1' (the same major/minor as the real thing).
> However, if I'm not mistaken it doesn't *have* to be a de-facto VirtIO
> serial port, correct? Shouldn't it work with any serial character device
> such as /dev/ttyU0? I tried this as well and the results seemed no
> different.

Some support for Xspice was added to vdagent in the 0.15 release, see
commit
http://cgit.freedesktop.org/spice/linux/vd_agent/commit/?id=21175d0701a
and the ones done around this time. In particular, a -S option to
specify the socket to use was added at the same time as this fake uinput
stuff.

Then looking at
http://cgit.freedesktop.org/xorg/driver/xf86-video-qxl/commit/?id=78f1115d
it seems Xspice should be able to launch the agent automatically if it's
at least spice-vdagent 0.15.

Does that help, or have you already noticed these things but they are
not working as expected?

Christophe
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 819 bytes
Desc: not available
URL: <http://lists.freedesktop.org/archives/spice-devel/attachments/20141125/84825b5a/attachment.sig>


More information about the Spice-devel mailing list