console/win32: allocate shareable display surface
authorMarc-André Lureau <marcandre.lureau@redhat.com>
Tue, 6 Jun 2023 11:56:46 +0000 (15:56 +0400)
committerMarc-André Lureau <marcandre.lureau@redhat.com>
Tue, 27 Jun 2023 15:08:56 +0000 (17:08 +0200)
commit09b4c198b80c3f5c9c051bc8d8935668cdd206e5
tree4b5f90d29bd863eed8e1bda300cadb5bbebec68b
parent439e0164cd83bf50095e6f66bb036b43a65a68b6
console/win32: allocate shareable display surface

Introduce qemu_win32_map_alloc() and qemu_win32_map_free() to allocate
shared memory mapping. The handle can be used to share the mapping with
another process.

Teach qemu_create_displaysurface() to allocate shared memory. Following
patches will introduce other places for shared memory allocation.

Other patches for -display dbus will share the memory when possible with
the client, to avoid expensive memory copy between the processes.

Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Message-Id: <20230606115658.677673-10-marcandre.lureau@redhat.com>
include/sysemu/os-win32.h
include/ui/console.h
ui/console.c
ui/qemu-pixman.c
ui/trace-events
util/oslib-win32.c
util/trace-events