The virtio packed virtqueue support patch[1] suggests converting endianness by lines:
virtio_tswap16s(vdev, &e->off_wrap); virtio_tswap16s(vdev, &e->flags); Though both of these conversion statements aren't present in the latest qemu code here[2] Is this intentional? [1]: https://mail.gnu.org/archive/html/qemu-block/2019-10/msg01492.html [2]: https://elixir.bootlin.com/qemu/latest/source/hw/virtio/virtio.c#L314