Merge tag 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mst/vhost
Pull virtio/vhost fixes from Michael S. Tsirkin: "Last minute fixes: - ARM DMA fix revert - vhost endian-ness fix - MAINTAINERS: email address change for Amit" * tag 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mst/vhost: MAINTAINERS: update email address for Amit Shah vhost: fix initialization for vq->is_le Revert "vring: Force use of DMA API for ARM-based systems with legacy devices"
This commit is contained in:
+1
-1
@@ -13065,7 +13065,7 @@ F: drivers/input/serio/userio.c
|
||||
F: include/uapi/linux/userio.h
|
||||
|
||||
VIRTIO CONSOLE DRIVER
|
||||
M: Amit Shah <amit.shah@redhat.com>
|
||||
M: Amit Shah <amit@kernel.org>
|
||||
L: virtualization@lists.linux-foundation.org
|
||||
S: Maintained
|
||||
F: drivers/char/virtio_console.c
|
||||
|
||||
@@ -130,14 +130,14 @@ static long vhost_get_vring_endian(struct vhost_virtqueue *vq, u32 idx,
|
||||
|
||||
static void vhost_init_is_le(struct vhost_virtqueue *vq)
|
||||
{
|
||||
if (vhost_has_feature(vq, VIRTIO_F_VERSION_1))
|
||||
vq->is_le = true;
|
||||
vq->is_le = vhost_has_feature(vq, VIRTIO_F_VERSION_1)
|
||||
|| virtio_legacy_is_little_endian();
|
||||
}
|
||||
#endif /* CONFIG_VHOST_CROSS_ENDIAN_LEGACY */
|
||||
|
||||
static void vhost_reset_is_le(struct vhost_virtqueue *vq)
|
||||
{
|
||||
vq->is_le = virtio_legacy_is_little_endian();
|
||||
vhost_init_is_le(vq);
|
||||
}
|
||||
|
||||
struct vhost_flush_struct {
|
||||
@@ -1714,10 +1714,8 @@ int vhost_vq_init_access(struct vhost_virtqueue *vq)
|
||||
int r;
|
||||
bool is_le = vq->is_le;
|
||||
|
||||
if (!vq->private_data) {
|
||||
vhost_reset_is_le(vq);
|
||||
if (!vq->private_data)
|
||||
return 0;
|
||||
}
|
||||
|
||||
vhost_init_is_le(vq);
|
||||
|
||||
|
||||
@@ -159,13 +159,6 @@ static bool vring_use_dma_api(struct virtio_device *vdev)
|
||||
if (xen_domain())
|
||||
return true;
|
||||
|
||||
/*
|
||||
* On ARM-based machines, the DMA ops will do the right thing,
|
||||
* so always use them with legacy devices.
|
||||
*/
|
||||
if (IS_ENABLED(CONFIG_ARM) || IS_ENABLED(CONFIG_ARM64))
|
||||
return !virtio_has_feature(vdev, VIRTIO_F_VERSION_1);
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user