[Spice-devel] [PATCH spice-gtk 0/5] RFC: add NBD channel

Marc-André Lureau marcandre.lureau at gmail.com
Wed Jun 5 08:39:54 PDT 2013


Hi,

Here is a proof of concept patch series implementing a NBD channel, to
allow mounting block devices from a Spice client, such as ISO images
for cdrom drives.

There are very few Spice specific protocol changes, since the protocol
is handled mostly by NBD. The protocol to allow switching block
devices is described in the spice.proto RFC patch.

Marc-André Lureau (5):
  coroutine: fix current coroutine
  Add simple NBD server library
  Add SpiceVMC GIOStream
  Add NBD channel
  Teach spicy to use a NBD channel

 configure.ac                         |   1 +
 doc/reference/spice-gtk-docs.xml     |   1 +
 doc/reference/spice-gtk-sections.txt |  18 +
 doc/reference/spice-gtk.types        |   3 +-
 gtk/Makefile.am                      |  20 +-
 gtk/channel-base.c                   |  48 ++
 gtk/channel-nbd.c                    | 425 ++++++++++++++++++
 gtk/channel-nbd.h                    |  88 ++++
 gtk/channel-port.c                   |  33 +-
 gtk/coroutine_ucontext.c             |   2 +-
 gtk/map-file                         |   5 +
 gtk/nbd/Makefile.am                  |  46 ++
 gtk/nbd/nbd-enums.c.etemplate        |  55 +++
 gtk/nbd/nbd-enums.h.etemplate        |  36 ++
 gtk/nbd/nbd-export.c                 | 423 ++++++++++++++++++
 gtk/nbd/nbd-export.h                 |  65 +++
 gtk/nbd/nbd-priv.h                   |  84 ++++
 gtk/nbd/nbd-server-session.c         | 837 +++++++++++++++++++++++++++++++++++
 gtk/nbd/nbd-server-session.h         |  56 +++
 gtk/nbd/nbd-server.c                 | 108 +++++
 gtk/nbd/nbd-server.h                 |  45 ++
 gtk/nbd/nbd.c                        |  25 ++
 gtk/nbd/nbd.h                        |  47 ++
 gtk/spice-channel-priv.h             |   8 +
 gtk/spice-channel.c                  |   6 +
 gtk/spice-client.h                   |   1 +
 gtk/spice-glib-sym-file              |   4 +
 gtk/spicy.c                          | 102 ++++-
 gtk/vmcstream.c                      | 436 ++++++++++++++++++
 gtk/vmcstream.h                      |  69 +++
 30 files changed, 3055 insertions(+), 42 deletions(-)
 create mode 100644 gtk/channel-nbd.c
 create mode 100644 gtk/channel-nbd.h
 create mode 100644 gtk/nbd/Makefile.am
 create mode 100644 gtk/nbd/nbd-enums.c.etemplate
 create mode 100644 gtk/nbd/nbd-enums.h.etemplate
 create mode 100644 gtk/nbd/nbd-export.c
 create mode 100644 gtk/nbd/nbd-export.h
 create mode 100644 gtk/nbd/nbd-priv.h
 create mode 100644 gtk/nbd/nbd-server-session.c
 create mode 100644 gtk/nbd/nbd-server-session.h
 create mode 100644 gtk/nbd/nbd-server.c
 create mode 100644 gtk/nbd/nbd-server.h
 create mode 100644 gtk/nbd/nbd.c
 create mode 100644 gtk/nbd/nbd.h
 create mode 100644 gtk/vmcstream.c
 create mode 100644 gtk/vmcstream.h

-- 
1.8.3.rc1.49.g8d97506



More information about the Spice-devel mailing list