af_xdp: update af_xdp driver plugin to depend on libxdp 69/37869/6
authorYulong Pei <yulong.pei@intel.com>
Thu, 5 Jan 2023 02:26:32 +0000 (02:26 +0000)
committerBeno�t Ganne <bganne@cisco.com>
Fri, 13 Jan 2023 09:57:00 +0000 (09:57 +0000)
commitf9a17487982ebc231ad0f32f15f261453aef8a88
treeedbfdc326ad1b0fc25f2efa083e94010c025c2a8
parent809eb669c7a353cd06da58ccdf8578053b1233ca
af_xdp: update af_xdp driver plugin to depend on libxdp

AF_XDP support is deprecated in libbpf since v0.7.0 [1], the libxdp library
now provides the functionality which once was in libbpf, this commit updates
af_xdp plugin to depend on libxdp, libbpf still remains a dependency even if
libxdp is present, as it need use libbpf APIs for program loading.

libxdp is distributed within xdp-tool [2], xdp-tools package also
include libbpf in it as dependency, so here installed libxdp v1.2.9 and
libbpf v0.8.0, both from xdp-tool-1.2.9 package.

More information about libxdp compatibility can be found in the libxdp
README [3].

In libbpf v0.8.0, The bpf_prog_load function was deprecated and changed to
bpf_object__open_file and bpf_object__next_program and bpf_object__load,
The bpf_get_link_xdp_id and bpf_set_link_xdp_fd functions were deprecated
and changed to bpf_xdp_attach and bpf_xdp_detach, The bpf_object__unload
function was deprecated and changed to bpf_object__close.

[1] https://github.com/libbpf/libbpf/commit/277846bc6c15
[2] https://github.com/xdp-project/xdp-tools/releases/tag/v1.2.9
[3] https://github.com/xdp-project/xdp-tools/blob/master/lib/libxdp/README.org

Type: improvement

Change-Id: Ifbf6e3aa38bc6e0b77561f26311fd11c15ddb47e
Signed-off-by: Yulong Pei <yulong.pei@intel.com>
Makefile
build/external/Makefile
build/external/packages/libbpf.mk [deleted file]
build/external/packages/xdp-tools.mk [new file with mode: 0644]
build/external/patches/xdp-tools_1.2.9/0001-libxdp-add-fPIC-with-static-lib-build.patch [new file with mode: 0644]
build/external/patches/xdp-tools_1.2.9/0002-libxdp-fix-asm-types.h-file-not-found-issue.patch [new file with mode: 0644]
build/external/patches/xdp-tools_1.2.9/0003-libxdp-fix-maybe-uninitialized-compiler-warning.patch [new file with mode: 0644]
src/plugins/af_xdp/CMakeLists.txt
src/plugins/af_xdp/af_xdp.h
src/plugins/af_xdp/device.c