On 26/11/2015 11:39, Paolo Bonzini wrote: > I would really prefer to get rid of vring.c as soon as the infrastructure > makes it possible---even if it's faster. We know what makes virtio.c > slower, and it's simpler to fix virtio.c than to convert all the other > models to vring.c _plus_ make vring.c safe for migration.
I've now pushed some optimizations of exec.c to the same place (branch dataplane, git://github.com/bonzini/qemu.git). Basically if the length of an address_space_read is constant, and the target ends up being RAM, the compiler can inline address_space_read in the caller and in particular eliminate the memcpy. Paolo