On Tue, Jun 06, 2023 at 06:15:11PM +0300, Viacheslav Ovsiienko wrote: > The DPDK can be compiled to be run in IOVA VA mode with > 'enable_iova_as_pa=false' meson option. If there is no > explicit EAL --iova-mode parameter specified in the command > line the rte_eal_init() tried to deduce VA or PA mode without > taking into account the above mentioned compile time option, > resulting into initialization failure. > > Signed-off-by: Viacheslav Ovsiienko <viachesl...@nvidia.com> > --- > lib/eal/linux/eal.c | 5 ++++- > 1 file changed, 4 insertions(+), 1 deletion(-) > > diff --git a/lib/eal/linux/eal.c b/lib/eal/linux/eal.c > index ae323cd492..9856ec9d12 100644 > --- a/lib/eal/linux/eal.c > +++ b/lib/eal/linux/eal.c > @@ -1081,7 +1081,10 @@ rte_eal_init(int argc, char **argv) > if (iova_mode == RTE_IOVA_DC) { > RTE_LOG(DEBUG, EAL, "Buses did not request a specific > IOVA mode.\n"); > > - if (!phys_addrs) { > + if (!RTE_IOVA_IN_MBUF) { > + iova_mode = RTE_IOVA_VA; > + RTE_LOG(DEBUG, EAL, "IOVA as VA mode is forced > by build option.\n"); > + } else if (!phys_addrs) { > /* if we have no access to physical addresses, > * pick IOVA as VA mode. > */
Acked-by: Bruce Richardson <bruce.richard...@intel.com>