• Shay Agroskin's avatar
    net: ena: introduce XDP redirect implementation · a318c70a
    Shay Agroskin authored
    This patch adds a partial support for the XDP_REDIRECT directive which
    instructs the driver to pass the packet to an interface specified by the
    program. The directive is passed to the driver by calling bpf_redirect()
    or bpf_redirect_map() functions from the eBPF program.
    
    To lay the ground for integration with the existing XDP TX
    implementation the patch removes the redundant page ref count increase
    in ena_xdp_xmit_frame() and then decrease in ena_clean_rx_irq(). Instead
    it only DMA unmaps descriptors for which XDP TX or REDIRECT directive
    was received.
    
    The XDP Redirect support is still missing .ndo_xdp_xmit function
    implementation, which allows to redirect packet to an ENA interface,
    which would be added in a later patch.
    Signed-off-by: default avatarShay Agroskin <shayagr@amazon.com>
    Signed-off-by: default avatarJakub Kicinski <kuba@kernel.org>
    a318c70a
ena_ethtool.c 23.6 KB