On 2015-03-13 at 05:47, Gerd Hoffmann wrote:
This patch adds the core code for virtio gpu emulation,
covering 2d support.

Written by Dave Airlie and Gerd Hoffmann.

Signed-off-by: Dave Airlie <airl...@redhat.com>
Signed-off-by: Gerd Hoffmann <kra...@redhat.com>
---
  hw/display/Makefile.objs       |   2 +
  hw/display/virtio-gpu.c        | 923 +++++++++++++++++++++++++++++++++++++++++
  include/hw/virtio/virtio-gpu.h | 147 +++++++
  trace-events                   |  14 +
  4 files changed, 1086 insertions(+)
  create mode 100644 hw/display/virtio-gpu.c
  create mode 100644 include/hw/virtio/virtio-gpu.h

diff --git a/hw/display/virtio-gpu.c b/hw/display/virtio-gpu.c
new file mode 100644
index 0000000..ab71291
--- /dev/null
+++ b/hw/display/virtio-gpu.c

[snip]

+int virtio_gpu_create_mapping_iov(struct virtio_gpu_resource_attach_backing 
*ab,
+                                  struct virtio_gpu_ctrl_command *cmd,
+                                  struct iovec **iov)
+{
+    struct virtio_gpu_mem_entry *ents;
+    size_t esize, s;
+    int i;
+
+    if (ab->nr_entries > 1024) {
+        qemu_log_mask(LOG_GUEST_ERROR,
+                      "%s: nr_entries is too big (%d > 1024)\n",
+                      __func__, ab->nr_entries);

You said that maybe you wanted to go for 16384 instead of 1024.

[snip]

diff --git a/include/hw/virtio/virtio-gpu.h b/include/hw/virtio/virtio-gpu.h
new file mode 100644
index 0000000..5d26ca9
--- /dev/null
+++ b/include/hw/virtio/virtio-gpu.h
@@ -0,0 +1,147 @@
+/*
+ * Virtio GPU Device
+ *
+ * Copyright Red Hat, Inc. 2013-2014
+ *
+ * Authors:
+ *     Dave Airlie <airl...@redhat.com>
+ *     Gerd Hoffmann <kra...@redhat.com>
+ *
+ * This work is licensed under the terms of the GNU GPL, version 2.
+ * See the COPYING file in the top-level directory.
+ */
+
+#ifndef _QEMU_VIRTIO_VGA_H
+#define _QEMU_VIRTIO_VGA_H
+
+#include "qemu/queue.h"
+#include "ui/qemu-pixman.h"
+#include "ui/console.h"
+#include "hw/virtio/virtio.h"
+#include "hw/pci/pci.h"
+
+#include "hw/virtio/virtgpu_hw.h"
+#define TYPE_VIRTIO_GPU "virtio-gpu-device"
+#define VIRTIO_GPU(obj)                                        \
+        OBJECT_CHECK(VirtIOGPU, (obj), TYPE_VIRTIO_GPU)
+
+#define VIRTIO_ID_GPU 16
+
+#define VIRTIO_GPU_MAX_RES 16

Unused in this series. Is that intentional?

Independent of whether you keep it or remove it, and independent of whether you increase the ab->nr_entries limit:

Reviewed-by: Max Reitz <mre...@redhat.com>

Reply via email to