[dpdk-dev] [PATCH v2 0/3] Increase test compatibility with PA IOVA
Stanislaw Kardach
kda at semihalf.com
Thu Jun 10 09:51:09 CEST 2021
On Fri, Jun 04, 2021 at 04:15:58PM +0200, Stanislaw Kardach wrote:
> Please let me know if I'm missing a bigger picture with the --no-huge
> and --no-shconf usage on non-FreeBSD platforms.
>
After looking at this issue again I'm abandoning this patchset because
it seems wrong for 2 reasons:
1. --iova-mode=pa and --no-huge combination is still unsupported but
detecting such situation is not straightforward in the
eal_flags_no_huge_autotest. That is because it is not only a product
of user input but IOMMU requirements (if any), bus requirements and
PA map availability. If a PCI device is bound to UIO and no IOMMU is
avilable, then bus requests PA mapping. However if there's no UIO
device, PCI reports DC and therefore decision relies on PA map
availability. If it's not available, VA will be chosen. This changes
between the parent dpdk-test binary being run (available->PA) and the
child processes being spawned by the test (not-available->VA).
However rte_eal_iova_mode() only reports the final IOVA mode. Even if
in the parent process it is PA, it doesn't mean it will be so in
the child process. So test will be skipped when it shouldn't.
2. Because of the above, the same test can pass on a non-IOMMU platform
if no PCI device is bound to UIO while it would fail if there is a
PCI device bound to UIO. It seems that the silent assumption is that
fast-tests should be run without any UIO devices (or basically with
all buses requestin DC IOVA mode).
Sorry for any confusion with this patchset.
--
Best Regards,
Stanislaw Kardach
More information about the dev
mailing list