Re: [PATCH bpf-next 2/4] xsk: allow AF_XDP sockets to receive packets directly from a queue
From: Björn Töpel <hidden>
Date: 2019-10-08 08:47:23
Also in:
bpf, intel-wired-lan
From: Björn Töpel <hidden>
Date: 2019-10-08 08:47:23
Also in:
bpf, intel-wired-lan
On Tue, 8 Oct 2019 at 08:59, Toke Høiland-Jørgensen [off-list ref] wrote:
Sridhar Samudrala [off-list ref] writes:quoted
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?
The dependent-read-barrier in READ_ONCE? Another branch -- leave that to the branch-predictor already! ;-) No, you're right, performance impact here is interesting. I guess the same static_branch could be used here as well...
-Toke