[dpdk-dev] [PATCH v2 0/3] vhost: add support for IOVA_VA mode
Adrian Moreno
amorenoz at redhat.com
Fri Sep 27 20:14:43 CEST 2019
Currently, IOVAs are assumed to be GPA when the dirty page logging
is performed.
Add support for guest IOVA_VA mode by translatingi adresses
to GPA before doing the dirty page logging.
Also, the page tables used for zero_copy mode also assume will not work
either if IOVA VA is enabled. In fact, enabling dequeue_zero_copy and
IOMMU is dangerous altogether because IOTLB invalidation of guest
pages can happen while the buffers are being used. So, ensure this
cannot happen by preventing both features to be activated
simultaneously.
Further information: https://bugs.dpdk.org/show_bug.cgi?id=337
Fixes: 69c90e98f483 ("vhost: enable IOMMU support")
Cc: maxime.coquelin at redhat.com
Cc: stable at dpdk.org
----
v2 changes: Also translate buffer addresses
----
Adrian Moreno (3):
vhost: translate incoming log address to gpa
vhost: convert buffer addresses to GPA for logging
vhost: prevent zero copy mode if iommu is on
lib/librte_vhost/rte_vhost.h | 2 +-
lib/librte_vhost/socket.c | 8 +++++++
lib/librte_vhost/vdpa.c | 4 +++-
lib/librte_vhost/vhost.c | 22 +++++++++++++++++
lib/librte_vhost/vhost.h | 36 ++++++++++++++++++++++++++++
lib/librte_vhost/vhost_user.c | 45 ++++++++++++++++++++++++++++++++++-
lib/librte_vhost/virtio_net.c | 9 +++----
7 files changed, 119 insertions(+), 7 deletions(-)
--
2.21.0
More information about the dev
mailing list