summaryrefslogtreecommitdiffstats
path: root/drivers/ide
diff options
context:
space:
mode:
authorGreg Kurz <gkurz@linux.vnet.ibm.com>2015-04-24 14:27:24 +0200
committerMichael S. Tsirkin <mst@redhat.com>2015-06-01 15:48:55 +0200
commit2751c9882b947292fcfb084c4f604e01724af804 (patch)
treea90f16c6a6b79835d5c6db04a46f6099d880d87a /drivers/ide
parentvirtio: add explicit big-endian support to memory accessors (diff)
downloadlinux-2751c9882b947292fcfb084c4f604e01724af804.tar.xz
linux-2751c9882b947292fcfb084c4f604e01724af804.zip
vhost: cross-endian support for legacy devices
This patch brings cross-endian support to vhost when used to implement legacy virtio devices. Since it is a relatively rare situation, the feature availability is controlled by a kernel config option (not set by default). The vq->is_le boolean field is added to cache the endianness to be used for ring accesses. It defaults to native endian, as expected by legacy virtio devices. When the ring gets active, we force little endian if the device is modern. When the ring is deactivated, we revert to the native endian default. If cross-endian was compiled in, a vq->user_be boolean field is added so that userspace may request a specific endianness. This field is used to override the default when activating the ring of a legacy device. It has no effect on modern devices. Signed-off-by: Greg Kurz <gkurz@linux.vnet.ibm.com> Signed-off-by: Michael S. Tsirkin <mst@redhat.com> Reviewed-by: Cornelia Huck <cornelia.huck@de.ibm.com> Reviewed-by: David Gibson <david@gibson.dropbear.id.au>
Diffstat (limited to 'drivers/ide')
0 files changed, 0 insertions, 0 deletions