DPDK patches and discussions
 help / color / mirror / Atom feed
* [dpdk-dev] [PATCH] eal: forcing IOVA as PA in ppc
@ 2019-07-31  3:35 Takeshi Yoshimura
  2019-07-31  9:10 ` Burakov, Anatoly
                   ` (4 more replies)
  0 siblings, 5 replies; 22+ messages in thread
From: Takeshi Yoshimura @ 2019-07-31  3:35 UTC (permalink / raw)
  To: dev; +Cc: Takeshi Yoshimura

Commit b76fafb174d2 ("eal: fix IOVA mode selection as VA for PCI
drivers") breaks ppc apps with no IOVA configs (or RTE_IOVA_DC)
because of the inconsistency of user's request and the result of
device capability for IOVA mode. I updated the code to force IOVA as
PA in ppc as before because current ppc driver does not support VA
mode.

Theoretically, ppc can support VA mode, but I suspect that ppc with
VA mode may have performance issues to create a big DMA window
(VA often uses higher addresses than PA). So, I didn't change the
code to check device capability in ppc.

Signed-off-by: Takeshi Yoshimura <tyos@jp.ibm.com>
---
 lib/librte_eal/linux/eal/eal.c | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/lib/librte_eal/linux/eal/eal.c b/lib/librte_eal/linux/eal/eal.c
index 946222ccd..db2dec922 100644
--- a/lib/librte_eal/linux/eal/eal.c
+++ b/lib/librte_eal/linux/eal/eal.c
@@ -1121,6 +1121,12 @@ rte_eal_init(int argc, char **argv)
 				RTE_LOG(DEBUG, EAL, "KNI can not work since physical addresses are unavailable\n");
 			}
 		}
+#endif
+#ifdef RTE_ARCH_PPC_64
+		if (iova_mode == RTE_IOVA_VA) {
+			iova_mode = RTE_IOVA_PA;
+			RTE_LOG(WARNING, EAL, "Forcing IOVA as 'PA' because PPC uses PA mode.\n");
+		}
 #endif
 		rte_eal_get_configuration()->iova_mode = iova_mode;
 	} else {
-- 
2.17.1


^ permalink raw reply	[flat|nested] 22+ messages in thread

end of thread, other threads:[~2019-08-02  8:50 UTC | newest]

Thread overview: 22+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-07-31  3:35 [dpdk-dev] [PATCH] eal: forcing IOVA as PA in ppc Takeshi Yoshimura
2019-07-31  9:10 ` Burakov, Anatoly
2019-07-31  9:29 ` David Marchand
2019-07-31 10:34 ` Takeshi T Yoshimura
2019-07-31 10:44 ` Takeshi T Yoshimura
2019-07-31 10:58   ` David Marchand
2019-07-31 19:23     ` David Christensen
2019-07-31 19:32       ` David Marchand
2019-07-31 21:20         ` David Christensen
2019-08-01  5:04           ` David Marchand
2019-07-31 19:44   ` David Marchand
2019-08-01  4:10   ` Takeshi T Yoshimura
2019-08-01  5:01     ` David Marchand
2019-08-01  5:25     ` Takeshi T Yoshimura
2019-08-01  7:15       ` David Marchand
2019-08-01  8:46       ` Takeshi T Yoshimura
2019-08-01  9:46         ` David Marchand
2019-08-02  8:09         ` Takeshi T Yoshimura
2019-08-02  8:22           ` David Marchand
2019-08-01  4:12   ` Takeshi T Yoshimura
2019-08-01 13:01 ` David Marchand
2019-08-02  8:50   ` Burakov, Anatoly

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).