server/tests/spice-server-replay: introduce

Enterprise / Virtualization / SPICE - Alon Levy [pobox.com] - 22 August 2015 06:36 UTC

usage: spice-server-replay -p -c

will run the commands from cmdfile ignoring timestamps, right after a connection is established from the client, and will SIGINT the client on end of cmdfile, and exit itself after waiting for the client.

spicy-stats from spice-gtk is useful for testing, it prints the summary of the traffic on each channel.

You can also run with no client by doing: spice-server-replay

For example, the 300 MB file (compressed to 4 MB with xz -9) available at [1] produces the following output:

spicy-stats total bytes read: total bytes read: inputs: 214 display: 1968983 cursor: 390 main: 256373

You could run it directly like so: curl http://annarchy.freedesktop.org/~alon/win7_boot_shutdown.cmd.xz | \ xzcat | server/tests/spice-server-replay -p 12345 -c `which spicy-stats` -

Known Problems:
- Implementation is wrong. Should do a single device->host conversion (i.e. get_virt), and then marshall/demarshall that (i.e. RedDrawable).
- segfault on file read done resulting in the above spicy-stats not being reproducable (well, up to 1% yes).

[1] http://annarchy.freedesktop.org/~alon/win7_boot_shutdown.cmd.xz

Now based on glib including using an asyncqueue for reading the playback file, and proper freeing of the allocated commands, with --slow,
--compression and a progress timer, and doesn't use more then nsurfaces.

622cb43 server/tests/spice-server-replay: introduce
server/tests/Makefile.am | 9 ++
server/tests/replay.c | 346 ++++++++++++++++++++++++++++++++++++++++++++++
2 files changed, 355 insertions(+)

Upstream: cgit.freedesktop.org


  • Share