On 08/20/2009 12:57 PM, Stefan Hajnoczi wrote:
Cross-platform virtio works when endianness is known in advance. For a hypervisor and a guest: 1. virtio-pci I/O registers use PCI endianness 2. vring uses guest endianness (hypervisor must byteswap) 3. guest memory buffers use guest endianness (hypervisor must byteswap) I know of no existing way when endianness is not known in advance. Perhaps a transport bit could be added to mark the endianness of the guest/driver side. This can be negotiated because virtio-pci has a known endianness. After negotiation, the host knows whether or not byteswapping is necessary for structures in guest memory.
Some processors are capable of switching their gender at runtime, so you cannot tell the guest endianness in advance.
-- error compiling committee.c: too many arguments to function -- 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