net/af_xdp: update docs with libxdp requirements and info

Message ID 20220211150305.27122-1-ciara.loftus@intel.com (mailing list archive)
State Accepted, archived
Delegated to: Ferruh Yigit
Headers
Series net/af_xdp: update docs with libxdp requirements and info |

Checks

Context Check Description
ci/checkpatch success coding style OK
ci/Intel-compilation success Compilation OK
ci/intel-Testing success Testing PASS
ci/iol-broadcom-Functional success Functional Testing PASS
ci/iol-mellanox-Performance success Performance Testing PASS
ci/iol-broadcom-Performance success Performance Testing PASS
ci/iol-intel-Performance success Performance Testing PASS
ci/iol-intel-Functional success Functional Testing PASS
ci/github-robot: build success github build: passed
ci/iol-aarch64-unit-testing success Testing PASS
ci/iol-x86_64-compile-testing success Testing PASS
ci/iol-aarch64-compile-testing success Testing PASS
ci/iol-abi-testing success Testing PASS
ci/iol-x86_64-unit-testing success Testing PASS

Commit Message

Loftus, Ciara Feb. 11, 2022, 3:03 p.m. UTC
  When libxdp is used, the LIBXDP_OBJECT_PATH environment variable must be
set to the location of where libxdp placed its bpf object files. This is
usually in /usr/local/lib/bpf or /usr/local/lib64/bpf. Failure to do so
will result in the PMD not initialising correctly as the bpf program is
not found. Document this requirement.

Also, mention that the following logs which are generated on application
launch can be ignored:

  libbpf: elf: skipping unrecognized data section(7) .xdp_run_config
  libbpf: elf: skipping unrecognized data section(8) xdp_metadata

Signed-off-by: Ciara Loftus <ciara.loftus@intel.com>
---
 doc/guides/nics/af_xdp.rst | 15 +++++++++++++++
 1 file changed, 15 insertions(+)
  

Comments

Ferruh Yigit Feb. 11, 2022, 5:39 p.m. UTC | #1
On 2/11/2022 3:03 PM, Ciara Loftus wrote:
> When libxdp is used, the LIBXDP_OBJECT_PATH environment variable must be
> set to the location of where libxdp placed its bpf object files. This is
> usually in /usr/local/lib/bpf or /usr/local/lib64/bpf. Failure to do so
> will result in the PMD not initialising correctly as the bpf program is
> not found. Document this requirement.
> 
> Also, mention that the following logs which are generated on application
> launch can be ignored:
> 
>    libbpf: elf: skipping unrecognized data section(7) .xdp_run_config
>    libbpf: elf: skipping unrecognized data section(8) xdp_metadata
> 
> Signed-off-by: Ciara Loftus <ciara.loftus@intel.com>

Acked-by: Ferruh Yigit <ferruh.yigit@intel.com>

Applied to dpdk-next-net/main, thanks.
  

Patch

diff --git a/doc/guides/nics/af_xdp.rst b/doc/guides/nics/af_xdp.rst
index db02ea1984..94821f07e4 100644
--- a/doc/guides/nics/af_xdp.rst
+++ b/doc/guides/nics/af_xdp.rst
@@ -44,6 +44,9 @@  This is a Linux-specific PMD, thus the following prerequisites apply:
 
 *  A Linux Kernel (version > v4.18) with XDP sockets configuration enabled;
 *  Both libxdp >=v1.2.2 and libbpf libraries installed, or, libbpf <=v0.6.0
+*  If using libxdp, it requires an environment variable called
+   LIBXDP_OBJECT_PATH to be set to the location of where libxdp placed its bpf
+   object files. This is usually in /usr/local/lib/bpf or /usr/local/lib64/bpf.
 *  A Kernel bound interface to attach to;
 *  For need_wakeup feature, it requires kernel version later than v5.3-rc1;
 *  For PMD zero copy, it requires kernel version later than v5.4-rc1;
@@ -141,4 +144,16 @@  Limitations
   NAPI context from a watchdog timer instead of from softirqs. More information
   on this feature can be found at [1].
 
+- **libxdp**
+
+  When using the default program (ie. when the vdev arg 'xdp_prog' is not used),
+  the following logs will appear when an application is launched:
+
+  .. code-block:: console
+
+    libbpf: elf: skipping unrecognized data section(7) .xdp_run_config
+    libbpf: elf: skipping unrecognized data section(8) xdp_metadata
+
+  These logs are not errors and can be ignored.
+
   [1] https://lwn.net/Articles/837010/