Sridhar Samudrala <sridhar.samudrala@xxxxxxxxx> writes: > int xdp_do_redirect(struct net_device *dev, struct xdp_buff *xdp, > struct bpf_prog *xdp_prog) > { > struct bpf_redirect_info *ri = this_cpu_ptr(&bpf_redirect_info); > struct bpf_map *map = READ_ONCE(ri->map); > + struct xdp_sock *xsk; > + > + xsk = xdp_get_direct_xsk(ri); > + if (xsk) > + return xsk_rcv(xsk, xdp); This is a new branch and a read barrier in the XDP_REDIRECT fast path. What's the performance impact of that for non-XSK redirect? -Toke