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
