All of lore.kernel.org
 help / color / mirror / Atom feed
From: Olivier Matz <olivier.matz@6wind.com>
To: Anatoly Burakov <anatoly.burakov@intel.com>
Cc: dev@dpdk.org, Andrew Rybchenko <arybchenko@solarflare.com>,
	david.marchand@redhat.com, stable@dpdk.org
Subject: Re: [dpdk-dev] [PATCH 1/2] mempool: use actual IOVA addresses when populating
Date: Fri, 15 Nov 2019 09:46:43 +0100	[thread overview]
Message-ID: <20191115084643.GF4841@platinum> (raw)
In-Reply-To: <825d02ef7f7b6ab65a36d9fa4719847228537384.1573739893.git.anatoly.burakov@intel.com>

On Thu, Nov 14, 2019 at 01:58:20PM +0000, Anatoly Burakov wrote:
> Currently, when mempool is being populated, we get IOVA address
> of every segment using rte_mem_virt2iova(). This works for internal
> memory, but does not really work for external memory, and does not
> work on platforms which return RTE_BAD_IOVA as a result of this
> call (such as FreeBSD). Moreover, even when it works, the function
> in question will do unnecessary pagewalks in IOVA as PA mode, as
> it falls back to rte_mem_virt2phy() instead of just doing a lookup in
> internal memseg table.
> 
> To fix it, replace the call to first attempt to look through the
> internal memseg table (this takes care of internal and external memory),
> and fall back to rte_mem_virt2iova() when unable to perform VA->IOVA
> translation via memseg table.
> 
> Fixes: 66cc45e293ed ("mem: replace memseg with memseg lists")

Shouldn't we also add
Fixes: 035ee5bea5ef ("mempool: remove optimistic IOVA-contiguous allocation")
?

From what I understand, even if the problem existed in populate_virt()
before, this is the commit that makes the problem visible in most cases.

> Cc: stable@dpdk.org
> 
> Signed-off-by: Anatoly Burakov <anatoly.burakov@intel.com>

Acked-by: Olivier Matz <olivier.matz@6wind.com>

  parent reply	other threads:[~2019-11-15  8:46 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-11-14 13:58 [dpdk-dev] [PATCH 1/2] mempool: use actual IOVA addresses when populating Anatoly Burakov
2019-11-14 13:58 ` [dpdk-dev] [PATCH 2/2] mempool: remove check for bad IOVA " Anatoly Burakov
2019-11-15  8:48   ` Olivier Matz
2019-11-19  1:45   ` [dpdk-dev] [dpdk-stable] " Li, WenjieX A
2019-11-15  8:46 ` Olivier Matz [this message]
2019-11-15 10:12   ` [dpdk-dev] [PATCH 1/2] mempool: use actual IOVA addresses " Burakov, Anatoly
2019-11-19  1:45 ` [dpdk-dev] [dpdk-stable] " Li, WenjieX A
2019-11-19 20:56 ` [dpdk-dev] " David Marchand

Reply instructions:

You may reply publicly 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=20191115084643.GF4841@platinum \
    --to=olivier.matz@6wind.com \
    --cc=anatoly.burakov@intel.com \
    --cc=arybchenko@solarflare.com \
    --cc=david.marchand@redhat.com \
    --cc=dev@dpdk.org \
    --cc=stable@dpdk.org \
    /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
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.