• Magnus Karlsson's avatar
    libbpf: add support for using AF_XDP sockets · 1cad0788
    Magnus Karlsson authored
    This commit adds AF_XDP support to libbpf. The main reason for this is
    to facilitate writing applications that use AF_XDP by offering
    higher-level APIs that hide many of the details of the AF_XDP
    uapi. This is in the same vein as libbpf facilitates XDP adoption by
    offering easy-to-use higher level interfaces of XDP
    functionality. Hopefully this will facilitate adoption of AF_XDP, make
    applications using it simpler and smaller, and finally also make it
    possible for applications to benefit from optimizations in the AF_XDP
    user space access code. Previously, people just copied and pasted the
    code from the sample application into their application, which is not
    desirable.
    
    The interface is composed of two parts:
    
    * Low-level access interface to the four rings and the packet
    * High-level control plane interface for creating and setting
      up umems and af_xdp sockets as well as a simple XDP program.
    Tested-by: default avatarBjörn Töpel <bjorn.topel@intel.com>
    Signed-off-by: default avatarMagnus Karlsson <magnus.karlsson@intel.com>
    Signed-off-by: default avatarDaniel Borkmann <daniel@iogearbox.net>
    1cad0788
Build 118 Bytes