Remove the check that limits nr_entries to 16384 in the
virtio_gpu_create_mapping_iov() function. The kernel virtio-gpu
driver does not have this limitation, and this artificial limit
in QEMU can prevent legitimate large scatter-gather list operations
from succeeding.

Remove this check to keep consistent with the kernel virtio-gpu
implementation.

Signed-off-by: Honglei Huang <[email protected]>
---
 hw/display/virtio-gpu.c | 7 -------
 1 file changed, 7 deletions(-)

diff --git a/hw/display/virtio-gpu.c b/hw/display/virtio-gpu.c
index 643e91ca2a..17df148920 100644
--- a/hw/display/virtio-gpu.c
+++ b/hw/display/virtio-gpu.c
@@ -808,13 +808,6 @@ int virtio_gpu_create_mapping_iov(VirtIOGPU *g,
     size_t esize, s;
     int e, v;
 
-    if (nr_entries > 16384) {
-        qemu_log_mask(LOG_GUEST_ERROR,
-                      "%s: nr_entries is too big (%d > 16384)\n",
-                      __func__, nr_entries);
-        return -1;
-    }
-
     esize = sizeof(*ents) * nr_entries;
     ents = g_malloc(esize);
     s = iov_to_buf(cmd->elem.out_sg, cmd->elem.out_num,
-- 
2.34.1


Reply via email to