#
39414ef4 |
| 03-Feb-2016 |
Gerd Hoffmann <kraxel@redhat.com> |
spice/gl: add & use qemu_spice_gl_monitor_config
Cc: qemu-stable@nongnu.org Signed-off-by: Gerd Hoffmann <kraxel@redhat.com> Reviewed-by: Marc-André Lureau <marcandre.lureau@redhat.com>
|
#
9f5c6d06 |
| 24-Feb-2016 |
Michal Privoznik <mprivozn@redhat.com> |
spice/gl: Enable dmabuf only for spice >= 0.13.1
After 474114b7 the dmabuf feature is enabled whenever spice greater than or equal to spice 0.13.0 is found. This is because two new functions are req
spice/gl: Enable dmabuf only for spice >= 0.13.1
After 474114b7 the dmabuf feature is enabled whenever spice greater than or equal to spice 0.13.0 is found. This is because two new functions are required: spice_qxl_gl_scanout and spice_qxl_gl_draw_async. These were, however, introduce in 0.13.1 release. Well, technically they haven't been released yet, but for sure they are not going to be part of 0.13.0 release (for the ABI stability sake).
Signed-off-by: Michal Privoznik <mprivozn@redhat.com> Message-id: 1a724e97cb587624d6f6009c15395496bccfa32b.1456317738.git.mprivozn@redhat.com Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
show more ...
|
#
8e388e90 |
| 19-Feb-2016 |
Gerd Hoffmann <kraxel@redhat.com> |
spice/gl: add unblock timer
Pure debug aid, print a warning in case unblocking doesn't happen within one second.
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com> Reviewed-by: Marc-André Lureau <mar
spice/gl: add unblock timer
Pure debug aid, print a warning in case unblocking doesn't happen within one second.
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com> Reviewed-by: Marc-André Lureau <marcandre.lureau@redhat.com>
show more ...
|
#
474114b7 |
| 13-Oct-2015 |
Gerd Hoffmann <kraxel@redhat.com> |
spice: add opengl/virgl/dmabuf support
This adds support for dma-buf passing to spice. This makes virtio-gpu with 3d acceleration work with spice.
Workflow: * virglrenderer renders the guest comm
spice: add opengl/virgl/dmabuf support
This adds support for dma-buf passing to spice. This makes virtio-gpu with 3d acceleration work with spice.
Workflow: * virglrenderer renders the guest command stream into a texture. * qemu exports the texture as dma-buf and passes on that dma-buf to spice-server. * spice-server passes the dma-buf to spice-client, using unix socket file descriptor passing. * spice-client asks the window systems composer to render the dma-buf to the screen.
Requires cutting edge spice (server) and spice-gtk (client) builds, from git master branch.
Also requires libvirt managing your qemu instance, and using "virt-viewer --attach $guest". libvirt will connect spice-server and spice-client using unix sockets instead of tcp sockets then, which is required for file descriptor passing.
Works for the local case (spice server and client on the same machine) only. Supporting remote too is planned (by feeding the dma-bufs into gpu-assisted video encoder), but not there yet.
gl mode is turned off by default, use "-spice gl=on,$otherargs" to enable it.
Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com> Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
show more ...
|
#
dc8dceee |
| 24-Mar-2015 |
Marc-André Lureau <marcandre.lureau@gmail.com> |
spice: set pointer position on hotspot
The Spice protocol uses cursor position on hotspot: the client is applying hotspot offset when drawing the cursor.
Signed-off-by: Gerd Hoffmann <kraxel@redhat
spice: set pointer position on hotspot
The Spice protocol uses cursor position on hotspot: the client is applying hotspot offset when drawing the cursor.
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
show more ...
|
#
0b2824e5 |
| 04-Nov-2014 |
Gerd Hoffmann <kraxel@redhat.com> |
spice: use bottom half instead of refresh timer for cursor updates
Calling directly doesn't work due to the qxl-render code running in spice server thread context. Meanwhile bottom half scheduling
spice: use bottom half instead of refresh timer for cursor updates
Calling directly doesn't work due to the qxl-render code running in spice server thread context. Meanwhile bottom half scheduling is thread-safe though, so we can use that to kick a cursor update in main i/o thread context.
Cc: Marc-André Lureau <marcandre.lureau@gmail.com> Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
show more ...
|
#
5643fc01 |
| 07-Jun-2014 |
Gerd Hoffmann <kraxel@redhat.com> |
spice: add mouse cursor support
So you'll have a mouse pointer when running non-qxl gfx cards with mouse pointer support (virtio-gpu, IIRC vmware too).
Signed-off-by: Gerd Hoffmann <kraxel@redhat.c
spice: add mouse cursor support
So you'll have a mouse pointer when running non-qxl gfx cards with mouse pointer support (virtio-gpu, IIRC vmware too).
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
show more ...
|
#
284d1c6b |
| 15-Mar-2013 |
Gerd Hoffmann <kraxel@redhat.com> |
console: allow pinning displaychangelisteners to consoles
DisplayChangeListener gets a new QemuConsole field, which can be set to non-NULL before registering. This will pin the QemuConsole, so that
console: allow pinning displaychangelisteners to consoles
DisplayChangeListener gets a new QemuConsole field, which can be set to non-NULL before registering. This will pin the QemuConsole, so that particular DisplayChangeListener will not follow console switches.
spice+gtk (which don't support text console input anyway) are switched over to be pinned to console 0, which usually is the graphical display.
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
show more ...
|
#
c78f7137 |
| 05-Mar-2013 |
Gerd Hoffmann <kraxel@redhat.com> |
console: stop using DisplayState in gfx hardware emulation
Use QemuConsole instead. Updates interfaces in console.[ch] and adapts gfx hardware emulation code.
Signed-off-by: Gerd Hoffmann <kraxel@
console: stop using DisplayState in gfx hardware emulation
Use QemuConsole instead. Updates interfaces in console.[ch] and adapts gfx hardware emulation code.
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
show more ...
|
#
71874c17 |
| 28-Feb-2013 |
Gerd Hoffmann <kraxel@redhat.com> |
spice: stop using DisplayState
Rework DisplayStateListener callbacks to not use the DisplayState any more.
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
|
#
c12aeb86 |
| 28-Feb-2013 |
Gerd Hoffmann <kraxel@redhat.com> |
console: rework DisplaySurface handling [dcl/ui side]
Replace the dpy_gfx_resize and dpy_gfx_setdata DisplayChangeListener callbacks with a dpy_gfx_switch callback which notifies the ui code when th
console: rework DisplaySurface handling [dcl/ui side]
Replace the dpy_gfx_resize and dpy_gfx_setdata DisplayChangeListener callbacks with a dpy_gfx_switch callback which notifies the ui code when the framebuffer backing storage changes.
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
show more ...
|
#
7c20b4a3 |
| 13-Nov-2012 |
Gerd Hoffmann <kraxel@redhat.com> |
console: fix displaychangelisteners interface
Split callbacks into separate Ops struct. Pass DisplayChangeListener pointer as first argument to all callbacks. Uninline a bunch of display functions
console: fix displaychangelisteners interface
Split callbacks into separate Ops struct. Pass DisplayChangeListener pointer as first argument to all callbacks. Uninline a bunch of display functions and move them from console.h to console.c
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
show more ...
|
#
0b087861 |
| 21-Jan-2013 |
Peter Maydell <peter.maydell@linaro.org> |
qemu-pixman.h: Avoid mutual inclusion loop with console.h
Remove an unnecessary mutual inclusion loop between qemu-pixman.h and console.h, since the former was only including the latter for 'PixelFo
qemu-pixman.h: Avoid mutual inclusion loop with console.h
Remove an unnecessary mutual inclusion loop between qemu-pixman.h and console.h, since the former was only including the latter for 'PixelFormat*', which can be provided by typedefs.h. This requires a minor adjustment to the files which included qemu-pixman.h, since they were relying on it implicitly dragging in all of console.h.
Signed-off-by: Peter Maydell <peter.maydell@linaro.org> Acked-by: Gerd Hoffmann <kraxel@redhat.com> Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
show more ...
|
#
9c17d615 |
| 17-Dec-2012 |
Paolo Bonzini <pbonzini@redhat.com> |
softmmu: move include files to include/sysemu/
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
|
#
1de7afc9 |
| 17-Dec-2012 |
Paolo Bonzini <pbonzini@redhat.com> |
misc: move include files to include/qemu/
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
|
#
28ecbaee |
| 28-Nov-2012 |
Paolo Bonzini <pbonzini@redhat.com> |
ui: move files to ui/ and include/ui/
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
|
#
d9a86569 |
| 02-Nov-2012 |
Gerd Hoffmann <kraxel@redhat.com> |
spice: switch to pixman
Switch over spice-display.c to use the pixman library instead of the home-grown pflib bits.
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
|
#
67be6726 |
| 24-Sep-2012 |
Gerd Hoffmann <kraxel@redhat.com> |
spice: raise requirement to 0.12
With the next qemu version (1.3) we are going to bump the qxl device revision to 4. The new features available require a recent spice-server version, so raise up th
spice: raise requirement to 0.12
With the next qemu version (1.3) we are going to bump the qxl device revision to 4. The new features available require a recent spice-server version, so raise up the bar. Otherwise we would end up with different qxl revisions depending on the spice-server version installed, which would be a major PITA when it comes to compat properties.
Clear out a big bunch of #ifdefs which are not needed any more.
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
show more ...
|
#
a7310dd3 |
| 05-Sep-2012 |
Gerd Hoffmann <kraxel@redhat.com> |
spice: add screen mirror
Create a screen mirror, keep there a copy of the most recent update passed on to spice-server.
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
|
#
b1af98ba |
| 05-Sep-2012 |
Gerd Hoffmann <kraxel@redhat.com> |
spice: switch to queue for vga mode updates
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
|
#
ddd8fdc7 |
| 04-Sep-2012 |
Gerd Hoffmann <kraxel@redhat.com> |
spice: make number of surfaces runtime-configurable.
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
|
#
020af1c4 |
| 22-Aug-2012 |
Alon Levy <alevy@redhat.com> |
qxl: add QXL_IO_MONITORS_CONFIG_ASYNC
Revision bumped to 4 for new IO support, enabled for spice-server >= 0.11.1. New io enabled if revision is 4. Revision can be set to 4.
[ kraxel: 3 continues t
qxl: add QXL_IO_MONITORS_CONFIG_ASYNC
Revision bumped to 4 for new IO support, enabled for spice-server >= 0.11.1. New io enabled if revision is 4. Revision can be set to 4.
[ kraxel: 3 continues to be the default revision. Once we have a new stable spice-server release and the qemu patches to enable the new bits merged we'll go flip the switch and make rev4 the default ]
This io calls the corresponding new spice api spice_qxl_monitors_config_async to let spice-server read a new guest set monitors config and notify the client.
On migration reissue spice_qxl_monitors_config_async.
RHBZ: 770842
Signed-off-by: Alon Levy <alevy@redhat.com> Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
fixup
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
show more ...
|
#
71d388d4 |
| 21-Aug-2012 |
Yonit Halperin <yhalperi@redhat.com> |
spice: notify on vm state change only via spice_server_vm_start/stop
QXLWorker->start/stop are deprecated since spice-server 0.11.2
Signed-off-by: Yonit Halperin <yhalperi@redhat.com> Signed-off-by
spice: notify on vm state change only via spice_server_vm_start/stop
QXLWorker->start/stop are deprecated since spice-server 0.11.2
Signed-off-by: Yonit Halperin <yhalperi@redhat.com> Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
show more ...
|
#
81fb6f15 |
| 24-Feb-2012 |
Alon Levy <alevy@redhat.com> |
qxl: make qxl_render_update async
RHBZ# 747011
Removes the last user of QXL_SYNC when using update drivers that use the _ASYNC io ports.
The last user is qxl_render_update, it is called both by qx
qxl: make qxl_render_update async
RHBZ# 747011
Removes the last user of QXL_SYNC when using update drivers that use the _ASYNC io ports.
The last user is qxl_render_update, it is called both by qxl_hw_update which is the vga_hw_update_ptr passed to graphic_console_init, and by qxl_hw_screen_dump.
At the same time the QXLRect area being passed to the red_worker thread is passed as a copy, as part of the QXLCookie.
The implementation uses interface_update_area_complete with a bh to make sure dpy_update and qxl_flip are called from the io thread, otherwise the vga->ds->surface.data can change under our feet.
With this patch sdl+spice works fine. But spice by itself doesn't produce the expected screendumps unless repeated a few times, due to ppm_save being called before update_area (rendering done in spice server thread) having a chance to complete. Fixed by next patch, but see commit message for problem introduced by it.
Signed-off-by: Alon Levy <alevy@redhat.com> Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
show more ...
|
#
2e1a98c9 |
| 24-Feb-2012 |
Alon Levy <alevy@redhat.com> |
qxl: introduce QXLCookie
Will be used in the next patch.
Signed-off-by: Alon Levy <alevy@redhat.com> Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
|