This patchset adds a VHOST_VRING_F_BYTESWAP flag to inform the host to byteswap data of the vring when the guest and the host have a different endian order. The flag is stored at initialization in an attribute of the virtio queues. It is then used to byteswap, or not, the vring indexes and descriptors shared with the guest OS. The last patch adds the byteswapping of the virtio_net header as it is done in qemu. The patches apply on linux-3.18-rc2 and the tests were done on PowerPC using the following hosts : fedora21/ppc64, utopic/ppc64le with various guests : trusty/ppc64le, utopic/ppc64le, debian/ppc64le, rhel6.5/ppc64, fedora21/ppc64, debian/ppc64 Regressions tests for x86_64 were done a debian host using rhel6.6, fedora20 and debian guests. Cédric Le Goater (4): vhost: add VHOST_VRING_F_BYTESWAP flag vhost: add byteswap routines vhost: byteswap virtqueue attributes vhost_net: byteswap virtio_net header drivers/vhost/net.c | 39 +++++++++--- drivers/vhost/vhost.c | 150 ++++++++++++++++++++++++++++++++++++++++---- drivers/vhost/vhost.h | 1 + include/uapi/linux/vhost.h | 3 + 4 files changed, 171 insertions(+), 22 deletions(-) -- 1.7.10.4 -- To unsubscribe from this list: send the line "unsubscribe kvm" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html