The memory window memzone is reserved with the alignment required by
the NTB hardware, but this alignment applies to the virtual address.
With IOVA as PA and a memzone larger than the hugepage size, the IOVA
may not be aligned and the device configuration fails.
Document that IOVA as VA mode or large enough hugepages are needed.
Fixes: 5ce50c234ad1 ("raw/ntb: generalize framework for multiple vendors")
Signed-off-by: Raghavendra Ningoji <[email protected]>
---
doc/guides/rawdevs/ntb.rst | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/doc/guides/rawdevs/ntb.rst b/doc/guides/rawdevs/ntb.rst
index c4ad2f05c4..8332c27de9 100644
--- a/doc/guides/rawdevs/ntb.rst
+++ b/doc/guides/rawdevs/ntb.rst
@@ -66,6 +66,10 @@ Different NTB hardware imposes different alignment
constraints,
so applications should not assume any particular value:
reserve each memory window memzone with the alignment returned by
``rte_pmd_ntb_get_mem_align()``
for that window and length. The ``ntb_fwd`` example shows this usage.
+The memzone alignment applies to its virtual address.
+With IOVA as PA, the IOVA of a memzone larger than the hugepage size
+is not guaranteed to be aligned, and the device configuration fails:
+use IOVA as VA mode, or hugepages at least as large as the memory window.
Device Setup
------------
--
2.34.1