[dpdk-stable] [PATCH v6 0/3] vhost: add support for IOVA_VA mode

Maxime Coquelin maxime.coquelin at redhat.com
Wed Oct 16 13:11:39 CEST 2019



On 10/9/19 1:54 PM, Adrian Moreno wrote:
> Currently, IOVAs are assumed to be GPA when the dirty page logging
> is performed.
> 
> Add support for guest IOVA_VA mode by translating addresses
> to GPA before doing the dirty page logging.
> 
> Also, the guest_pages tracking mechanism used for zero_copy 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
> 
> ---
> v6 changes: Change log string to fix UB1604-32 build
> v5 changes: Rebase on top of dpdk-next-virtio
> v4 changes: Address review comments
> v3 changes: Address style warnings
> 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       |  3 ++-
>  lib/librte_vhost/vhost.c      | 41 ++++++++++++++++++++++++++++
>  lib/librte_vhost/vhost.h      | 51 +++++++++++++++++++++++++++++++++++
>  lib/librte_vhost/vhost_user.c | 42 ++++++++++++++++++++++++++++-
>  lib/librte_vhost/virtio_net.c | 12 +++++----
>  7 files changed, 151 insertions(+), 8 deletions(-)
> 

Applied to dpdk-next-virtio/master.

Thanks,
Maxime


More information about the stable mailing list