On Mon, 12 Jun 2017 18:00:23 -0700, Martin KaFai Lau wrote: > + case XDP_QUERY_PROG: { > + const struct bpf_prog *xdp_prog; > + > + xdp_prog = READ_ONCE(nn->dp.xdp_prog); > + if (xdp_prog) > + xdp->prog_id = xdp_prog->aux->id; > + else > + xdp->prog_id = 0; > return 0; > + } > default: > return -EINVAL; > }
Why READ_ONCE? I thought .ndo_xdp is always called under RTNL.