]> git.feebdaed.xyz Git - 0xmirror/xdp-tools.git/commitdiff
Doc: update libxdp README.org and man page with architecture support
authorVincent Li <vincent.mc.li@gmail.com>
Sun, 27 Jul 2025 19:04:15 +0000 (12:04 -0700)
committerToke Høiland-Jørgensen <toke@redhat.com>
Tue, 16 Sep 2025 17:24:06 +0000 (19:24 +0200)
XDP multiprog on a single interface generally is supported by
architectures supporting BPF trampoline.

Signed-off-by: Vincent Li <vincent.mc.li@gmail.com>
[ squash commits, rerun man page export on newer Emacs ]
Signed-off-by: Toke Høiland-Jørgensen <toke@redhat.com>
lib/libxdp/README.org
lib/libxdp/libxdp.3

index d60652a54d0eaa50d6d9559b7250c7e6ccd95041..daf02fac96402c59a571e4a0647856df43b5c809 100644 (file)
@@ -423,12 +423,13 @@ kernel and first appeared in kernel release 5.6. To *incrementally* attach
 multiple programs, a further refinement added by commit 4a1e7c0c63e0 ("bpf:
 Support attaching freplace programs to multiple attach points") is needed; this
 first appeared in the upstream kernel version 5.10. The functionality relies on
-the "BPF trampolines" feature which is unfortunately only available on the
-x86_64 architecture. In other words, kernels before 5.6 can only attach a single
-XDP program to each interface, kernels 5.6+ can attach multiple programs if they
-are all attached at the same time, and kernels 5.10 have full support for XDP
-multiprog on x86_64. On other architectures, only a single program can be
-attached to each interface.
+the "BPF trampolines" feature which is available on architectures that support it.
+
+The support matrix is as follows:
+- Kernels before 5.6 can only attach a single XDP program to each interface
+- Kernels 5.6+ can attach multiple programs if they are all attached at the same time
+- Kernels 5.10+ have full support for XDP multiprog on architectures supporting BPF trampolines
+- On architectures without BPF trampoline support, only a single program can be attached to each interface
 
 To load AF_XDP programs, kernel support for AF_XDP sockets needs to be included
 and enabled in the kernel build. In addition, when using AF_XDP sockets, an XDP
index 77cde4758d9e52513ad49ce714a7ba954ba31189..29187a65b2ffa969665df9c402bd6cc10b2446c9 100644 (file)
@@ -1,4 +1,4 @@
-.TH "libxdp" "3" "January 14, 2025" "v1.5.6" "libxdp - library for loading XDP programs" 
+.TH "libxdp" "3" "September 14, 2025" "v1.5.6" "libxdp - library for loading XDP programs" 
 .SH "NAME"
 libxdp \- library for attaching XDP programs and using AF_XDP sockets
 .SH "SYNOPSIS"
@@ -473,12 +473,18 @@ kernel and first appeared in kernel release 5.6. To \fBincrementally\fP attach
 multiple programs, a further refinement added by commit 4a1e7c0c63e0 ("bpf:
 Support attaching freplace programs to multiple attach points") is needed; this
 first appeared in the upstream kernel version 5.10. The functionality relies on
-the "BPF trampolines" feature which is unfortunately only available on the
-x86_64 architecture. In other words, kernels before 5.6 can only attach a single
-XDP program to each interface, kernels 5.6+ can attach multiple programs if they
-are all attached at the same time, and kernels 5.10 have full support for XDP
-multiprog on x86_64. On other architectures, only a single program can be
-attached to each interface.
+the "BPF trampolines" feature which is available on architectures that support it.
+
+.PP
+The support matrix is as follows:
+.IP \(em 4
+Kernels before 5.6 can only attach a single XDP program to each interface
+.IP \(em 4
+Kernels 5.6+ can attach multiple programs if they are all attached at the same time
+.IP \(em 4
+Kernels 5.10+ have full support for XDP multiprog on architectures supporting BPF trampolines
+.IP \(em 4
+On architectures without BPF trampoline support, only a single program can be attached to each interface
 
 .PP
 To load AF_XDP programs, kernel support for AF_XDP sockets needs to be included