hw/display: Restrict virtio-gpu-udmabuf stubs to !Linux

When using qemu configured with --enabled-modules, the
generic stubs are used instead of the module symbols:

  qemu-system-x86_64: -device virtio-vga,blob=on: cannot enable blob resources without udmabuf

Restrict the stubs to Linux and only link them when
CONFIG_VIRTIO_GPU is disabled (only the modularized
version is available when it is enabled).

Reported-by: Maxim R. <mrom06@ya.ru>
Resolves: https://gitlab.com/qemu-project/qemu/-/issues/553
Signed-off-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Message-Id: <20210823100454.615816-2-philmd@redhat.com>
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
This commit is contained in:
Philippe Mathieu-Daudé 2021-08-23 12:04:53 +02:00 committed by Gerd Hoffmann
parent fc4d3f35f8
commit cdb1fba084
3 changed files with 2 additions and 2 deletions

View file

@ -52,7 +52,6 @@ if have_system
stub_ss.add(files('semihost.c'))
stub_ss.add(files('usb-dev-stub.c'))
stub_ss.add(files('xen-hw-stub.c'))
stub_ss.add(files('virtio-gpu-udmabuf.c'))
else
stub_ss.add(files('qdev.c'))
endif

View file

@ -1,27 +0,0 @@
#include "qemu/osdep.h"
#include "hw/virtio/virtio-gpu.h"
bool virtio_gpu_have_udmabuf(void)
{
/* nothing (stub) */
return false;
}
void virtio_gpu_init_udmabuf(struct virtio_gpu_simple_resource *res)
{
/* nothing (stub) */
}
void virtio_gpu_fini_udmabuf(struct virtio_gpu_simple_resource *res)
{
/* nothing (stub) */
}
int virtio_gpu_update_dmabuf(VirtIOGPU *g,
uint32_t scanout_id,
struct virtio_gpu_simple_resource *res,
struct virtio_gpu_framebuffer *fb)
{
/* nothing (stub) */
return 0;
}