DPDK patches and discussions
 help / color / Atom feed
From: Adrian Moreno <amorenoz@redhat.com>
To: dev@dpdk.org
Cc: tiwei.bie@intel.com, zhihong.wang@intel.com,
	maxime.coquelin@redhat.com, Adrian Moreno <amorenoz@redhat.com>,
	stable@dpdk.org
Subject: [dpdk-dev] [PATCH v6 0/3] vhost: add support for IOVA_VA mode
Date: Wed,  9 Oct 2019 13:54:29 +0200
Message-ID: <20191009115432.14863-1-amorenoz@redhat.com> (raw)

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@redhat.com
Cc: stable@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(-)

-- 
2.21.0


             reply index

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-10-09 11:54 Adrian Moreno [this message]
2019-10-09 11:54 ` [dpdk-dev] [PATCH v6 1/3] vhost: translate incoming log address to gpa Adrian Moreno
2019-10-11 15:13   ` Maxime Coquelin
2019-10-09 11:54 ` [dpdk-dev] [PATCH v6 2/3] vhost: convert buffer addresses to GPA for logging Adrian Moreno
2019-10-11 15:16   ` Maxime Coquelin
2019-10-09 11:54 ` [dpdk-dev] [PATCH v6 3/3] vhost: prevent zero copy mode if iommu is on Adrian Moreno
2019-10-11 15:16   ` Maxime Coquelin
2019-10-16 11:11 ` [dpdk-dev] [PATCH v6 0/3] vhost: add support for IOVA_VA mode Maxime Coquelin

Reply instructions:

You may reply publically to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20191009115432.14863-1-amorenoz@redhat.com \
    --to=amorenoz@redhat.com \
    --cc=dev@dpdk.org \
    --cc=maxime.coquelin@redhat.com \
    --cc=stable@dpdk.org \
    --cc=tiwei.bie@intel.com \
    --cc=zhihong.wang@intel.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link

DPDK patches and discussions

Archives are clonable:
	git clone --mirror http://inbox.dpdk.org/dev/0 dev/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 dev dev/ http://inbox.dpdk.org/dev \
		dev@dpdk.org
	public-inbox-index dev


Newsgroup available over NNTP:
	nntp://inbox.dpdk.org/inbox.dpdk.dev


AGPL code for this site: git clone https://public-inbox.org/ public-inbox