Hey, Scott points out that the current behaviour of draining the entire queue in tap_send() doesn't work with non-virtio NICs because we drop a packet when the NIC queue fills up.
This series of patches first disables this behaviour, fixes various aspects of the queueing logic and then re-enables the behaviour in a way that works with all NICs. The first patch should also be applied to stable-0.11, I'll follow up with a backport. Scott, Sven, if you could test the tap-drain-queue branch from my tree, that would be great: http://repo.or.cz/w/qemu/markmc.git Thanks, Mark.