[Spice-devel] [RFCv2 00/21] xspice using a shortcircuited driver

Alon Levy alevy at redhat.com
Tue Jun 21 16:40:55 PDT 2011


On Fri, Apr 29, 2011 at 12:49:38PM +0300, Alon Levy wrote:

Updated patchset available here:
 git://anongit.freedesktop.org/~alon/xspice xspice.v5

Changes:
 fixed segfault on xserver kill
 rewrote inputs as two drivers, updated spiceqxl.xorg.conf to load them
  (this fixed the segfault bug as well in the process)
 fixed a watch implementation bug on remove (abort, didn't notice it before)

> This patchset introduces a second target namely spiceqxl_drv.so that contains
> a display driver, a keyboard and mouse driver, and they all use a single spice
> server instance. Effectively this allows a spice server using a config file such
> as:
> 
> Section "Device"
>  Identifier "XSPICE"
>  Driver "spiceqxl"
>  Option "SpicePort" "6911"
> EndSection
> 
> Any comments appreciated (especially concerning the input hack^W drivers, marked [H] below).
> 
> Alon Levy (21):
>   qxl_ring: keep qxl pointer
>   partially replace outb with ioport_write
>   add config options (empty for now)
>   qxl_driver: add setup_slot helper
>   qxl_driver: introduce helpers for memory map and unmap
>   xspice: add configure option and make target
>   xspice: use spiceqxl as name of xspice driver
>   xspice: add spiceqxl_io_port, empty implementation
>   xspice: stop using pci and vga
>   xspice: allocate a single slot
>   xspice: don't load ramdac and vgahw sub modules
>   xspice: use spiceqxlModuleData as entry point
>   xspice: implement map_helper, unmap_helper, add init_qxl_rom
>   xspice: add SpicePort config option
>   xspice: init spice server, add main loop
>   xspice: add display interface
>   xspice: add init_qxl_ram
>   xspice: implement ioport_write
>   [H] xspice: add inputs (mouse and keyboard)
>   xspice: README, config, launcher script
>   xspice/qxl_ring: yield when ring is full
> 
>  README.xspice            |  109 ++++++++++++++
>  TODO.xspice              |   27 ++++
>  configure.ac             |   13 ++
>  spiceqxl.xorg.conf       |   15 ++
>  src/Makefile.am          |   28 ++++
>  src/qxl.h                |   90 +++++++++++-
>  src/qxl_driver.c         |  322 +++++++++++++++++++++++++++++++-----------
>  src/qxl_ring.c           |   21 ++-
>  src/qxl_surface.c        |    4 +-
>  src/spiceqxl_display.c   |  319 +++++++++++++++++++++++++++++++++++++++++
>  src/spiceqxl_display.h   |   11 ++
>  src/spiceqxl_driver.c    |  132 +++++++++++++++++
>  src/spiceqxl_driver.h    |   11 ++
>  src/spiceqxl_inputs.c    |  353 ++++++++++++++++++++++++++++++++++++++++++++++
>  src/spiceqxl_inputs.h    |    9 ++
>  src/spiceqxl_io_port.c   |  242 +++++++++++++++++++++++++++++++
>  src/spiceqxl_io_port.h   |   10 ++
>  src/spiceqxl_main_loop.c |  317 +++++++++++++++++++++++++++++++++++++++++
>  src/spiceqxl_main_loop.h |   10 ++
>  xspice                   |   21 +++
>  20 files changed, 1967 insertions(+), 97 deletions(-)
>  create mode 100644 README.xspice
>  create mode 100644 TODO.xspice
>  create mode 100644 spiceqxl.xorg.conf
>  create mode 100644 src/spiceqxl_display.c
>  create mode 100644 src/spiceqxl_display.h
>  create mode 100644 src/spiceqxl_driver.c
>  create mode 100644 src/spiceqxl_driver.h
>  create mode 100644 src/spiceqxl_inputs.c
>  create mode 100644 src/spiceqxl_inputs.h
>  create mode 100644 src/spiceqxl_io_port.c
>  create mode 100644 src/spiceqxl_io_port.h
>  create mode 100644 src/spiceqxl_main_loop.c
>  create mode 100644 src/spiceqxl_main_loop.h
>  create mode 100755 xspice
> 
> -- 
> 1.7.4.4
> 
> _______________________________________________
> 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