From: Jerin Jacob <jerin.jacob@caviumnetworks.com>
To: Ferruh Yigit <ferruh.yigit@intel.com>
Cc: Thomas Monjalon <thomas@monjalon.net>,
Bruce Richardson <bruce.richardson@intel.com>,
Sergio Gonzalez Monroy <sergio.gonzalez.monroy@intel.com>,
dev@dpdk.org, Jianfeng Tan <jianfeng.tan@intel.com>,
Santosh Shukla <santosh.shukla@caviumnetworks.com>
Subject: Re: [PATCH] eal: disable IOVA mode detection by default
Date: Wed, 1 Nov 2017 09:32:52 +0530 [thread overview]
Message-ID: <20171101040251.GA13569@jerin> (raw)
In-Reply-To: <20171101010726.17781-1-ferruh.yigit@intel.com>
-----Original Message-----
> Date: Wed, 1 Nov 2017 01:07:26 +0000
> From: Ferruh Yigit <ferruh.yigit@intel.com>
> To: Thomas Monjalon <thomas@monjalon.net>, Bruce Richardson
> <bruce.richardson@intel.com>, Sergio Gonzalez Monroy
> <sergio.gonzalez.monroy@intel.com>
> CC: dev@dpdk.org, Ferruh Yigit <ferruh.yigit@intel.com>, Jianfeng Tan
> <jianfeng.tan@intel.com>, Santosh Shukla
> <santosh.shukla@caviumnetworks.com>
> Subject: [dpdk-dev] [PATCH] eal: disable IOVA mode detection by default
> X-Mailer: git-send-email 2.13.6
>
> Fix kernel crash with KNI because KNI requires physical addresses.
The actual fix would be to make KNI IOMMU aware based on the DPDK mode.
ie. On slow path,
/* Get iommu domain for iova to physical addr conversion */
if (rte_eal_iova_mode() == RTE_IOVA_VA)
kni->iommu_domain = iommu_get_domain_for_dev(dev);
else
kni->iommu_domain = NULL;
On fast path,
static inline u64 kni_iova_to_phys(struct ... *kni, dma_addr_t dma_addr)
{
/* Translation is installed only when IOMMU is present */
if (kni->iommu_domain)
return iommu_iova_to_phys(kni->iommu_domain, dma_addr);
return dma_addr;
}
>
> A config option introduced to disable IOVA mode detection and to set it
> to physical address by default. Disabling config option will enable IOVA
> mode detection.
>
> When there is no intension to use KNI, it is safe to enable detection.
>
> Config option disable IOVA mode detection by default to be sure only who
> is aware of result enable it.
>
> Fixes: 72d013644bd6 ("mem: honor IOVA mode in malloc virt2phy")
>
> Signed-off-by: Ferruh Yigit <ferruh.yigit@intel.com>
> ---
> Cc: Jianfeng Tan <jianfeng.tan@intel.com>
> Cc: Santosh Shukla <santosh.shukla@caviumnetworks.com>
> Cc: Thomas Monjalon <thomas@monjalon.net>
> ---
> config/common_base | 5 +++++
> lib/librte_eal/bsdapp/eal/eal.c | 4 ++++
> lib/librte_eal/linuxapp/eal/eal.c | 4 ++++
> 3 files changed, 13 insertions(+)
>
> diff --git a/config/common_base b/config/common_base
> index 82ee75456..903e7685b 100644
> --- a/config/common_base
> +++ b/config/common_base
> @@ -107,6 +107,11 @@ CONFIG_RTE_MALLOC_DEBUG=n
> CONFIG_RTE_EAL_NUMA_AWARE_HUGEPAGES=n
>
> #
> +# Disabling PHYS_IOVA may crash kernel for KNI, use with caution
> +#
> +CONFIG_RTE_EAL_USE_PHYS_IOVA=y
Defeat the purpose of all dynamic probing scheme.
Either we can fix the KNI or revert the following patch for this release.
http://dpdk.org/commit/f37dfab2
next prev parent reply other threads:[~2017-11-01 4:03 UTC|newest]
Thread overview: 19+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-11-01 1:07 [PATCH] eal: disable IOVA mode detection by default Ferruh Yigit
2017-11-01 2:17 ` Tan, Jianfeng
2017-11-01 6:32 ` Ferruh Yigit
2017-11-01 6:37 ` Tan, Jianfeng
2017-11-01 7:29 ` Ferruh Yigit
2017-11-01 7:55 ` Tan, Jianfeng
2017-11-01 3:54 ` santosh
2017-11-01 4:02 ` Jerin Jacob [this message]
2017-11-01 6:21 ` Ferruh Yigit
2017-11-01 6:54 ` Jerin Jacob
2017-11-01 7:39 ` Tan, Jianfeng
2017-11-01 8:26 ` Jerin Jacob
2017-11-01 8:53 ` Tan, Jianfeng
2017-11-01 18:31 ` Ferruh Yigit
2017-11-01 8:12 ` Ferruh Yigit
2017-11-01 10:31 ` Thomas Monjalon
2017-11-01 11:06 ` santosh
2017-11-01 18:22 ` Ferruh Yigit
2017-11-01 18:11 ` Ferruh Yigit
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=20171101040251.GA13569@jerin \
--to=jerin.jacob@caviumnetworks.com \
--cc=bruce.richardson@intel.com \
--cc=dev@dpdk.org \
--cc=ferruh.yigit@intel.com \
--cc=jianfeng.tan@intel.com \
--cc=santosh.shukla@caviumnetworks.com \
--cc=sergio.gonzalez.monroy@intel.com \
--cc=thomas@monjalon.net \
/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.