mirror of
https://gitlab.com/qemu-project/qemu
synced 2024-09-06 18:05:37 +00:00
spice: add new spice-server callbacks to ui/spice-display.c
Otherwise qemu crashes with non-qxl graphics cards. Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
This commit is contained in:
parent
9995c0b706
commit
21a50d0b1a
|
@ -525,6 +525,37 @@ static int interface_flush_resources(QXLInstance *sin)
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static void interface_update_area_complete(QXLInstance *sin,
|
||||||
|
uint32_t surface_id,
|
||||||
|
QXLRect *dirty, uint32_t num_updated_rects)
|
||||||
|
{
|
||||||
|
/* should never be called, used in qxl native mode only */
|
||||||
|
fprintf(stderr, "%s: abort()\n", __func__);
|
||||||
|
abort();
|
||||||
|
}
|
||||||
|
|
||||||
|
/* called from spice server thread context only */
|
||||||
|
static void interface_async_complete(QXLInstance *sin, uint64_t cookie_token)
|
||||||
|
{
|
||||||
|
/* should never be called, used in qxl native mode only */
|
||||||
|
fprintf(stderr, "%s: abort()\n", __func__);
|
||||||
|
abort();
|
||||||
|
}
|
||||||
|
|
||||||
|
static void interface_set_client_capabilities(QXLInstance *sin,
|
||||||
|
uint8_t client_present,
|
||||||
|
uint8_t caps[58])
|
||||||
|
{
|
||||||
|
dprint(3, "%s:\n", __func__);
|
||||||
|
}
|
||||||
|
|
||||||
|
static int interface_client_monitors_config(QXLInstance *sin,
|
||||||
|
VDAgentMonitorsConfig *monitors_config)
|
||||||
|
{
|
||||||
|
dprint(3, "%s:\n", __func__);
|
||||||
|
return 0; /* == not supported by guest */
|
||||||
|
}
|
||||||
|
|
||||||
static const QXLInterface dpy_interface = {
|
static const QXLInterface dpy_interface = {
|
||||||
.base.type = SPICE_INTERFACE_QXL,
|
.base.type = SPICE_INTERFACE_QXL,
|
||||||
.base.description = "qemu simple display",
|
.base.description = "qemu simple display",
|
||||||
|
@ -544,6 +575,10 @@ static const QXLInterface dpy_interface = {
|
||||||
.req_cursor_notification = interface_req_cursor_notification,
|
.req_cursor_notification = interface_req_cursor_notification,
|
||||||
.notify_update = interface_notify_update,
|
.notify_update = interface_notify_update,
|
||||||
.flush_resources = interface_flush_resources,
|
.flush_resources = interface_flush_resources,
|
||||||
|
.async_complete = interface_async_complete,
|
||||||
|
.update_area_complete = interface_update_area_complete,
|
||||||
|
.set_client_capabilities = interface_set_client_capabilities,
|
||||||
|
.client_monitors_config = interface_client_monitors_config,
|
||||||
};
|
};
|
||||||
|
|
||||||
static SimpleSpiceDisplay sdpy;
|
static SimpleSpiceDisplay sdpy;
|
||||||
|
|
Loading…
Reference in a new issue