Paolo Bonzini 3b3b062821 virtio: slim down allocation of VirtQueueElements
Build the addresses and s/g lists on the stack, and then copy them
to a VirtQueueElement that is just as big as required to contain this
particular s/g list.  The cost of the copy is minimal compared to that
of a large malloc.

When virtqueue_map is used on the destination side of migration or on
loadvm, the iovecs have already been split at memory region boundary,
so we can just reuse the out_num/in_num we find in the file.

Reviewed-by: Cornelia Huck <cornelia.huck@de.ibm.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
2016-02-06 20:44:08 +02:00
..
2016-01-29 15:07:23 +00:00
2016-01-29 15:07:23 +00:00
2016-01-29 15:07:23 +00:00
2016-01-29 15:07:23 +00:00
2016-01-29 15:07:23 +00:00
2016-01-29 15:07:23 +00:00
2016-01-12 11:04:14 +05:30