On 09-Jul-19 4:12 PM, Thomas Monjalon wrote:
09/07/2019 17:02, Burakov, Anatoly:
When IOMMU is fully enabled (iommu=on at boot time), igb_uio will simply
not work. VFIO will work, whichever address mode you use.

When IOMMU is in pass-through mode (iommu=pt at boot time), both igb_uio
and VFIO will work, although igb_uio will only support IOVA as PA mode.
Both modes will enable IOMMU, and both can run in IOVA as PA mode
without losing that protection.

It's only when IOMMU is off, igb_uio will not engage IOMMU, and VFIO
will only work in no-IOMMU mode (thus not engaging IOMMU either), and
only then you lack the IOMMU protection.

Could we try to make IOMMU status clear in DPDK logs?
Then we could check the kernel drivers loaded and give
a compatibility status for each of them as debug logs.


I don't think there is a way to know IOMMU status from DPDK. It's a property of the system. We can kinda-sorta check IOMMU status if we have VFIO driver (there's a API to check for vfio_noiommu i think), and we do log it into debug output, but there is no such facility for igb_uio - we cannot know if it does or does not engage the IOMMU. (not unless we grep dmesg or something)

--
Thanks,
Anatoly

Reply via email to