Add support to qede to report bpf_prog ID during XDP_QUERY_PROG. Signed-off-by: Martin KaFai Lau <ka...@fb.com> Cc: Mintz, Yuval <yuval.mi...@cavium.com> Acked-by: Alexei Starovoitov <a...@fb.com> Acked-by: Daniel Borkmann <dan...@iogearbox.net> --- drivers/net/ethernet/qlogic/qede/qede_filter.c | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-)
diff --git a/drivers/net/ethernet/qlogic/qede/qede_filter.c b/drivers/net/ethernet/qlogic/qede/qede_filter.c index 13955a3bd3b3..26b652ae5ec1 100644 --- a/drivers/net/ethernet/qlogic/qede/qede_filter.c +++ b/drivers/net/ethernet/qlogic/qede/qede_filter.c @@ -1035,9 +1035,16 @@ int qede_xdp(struct net_device *dev, struct netdev_xdp *xdp) switch (xdp->command) { case XDP_SETUP_PROG: return qede_xdp_set(edev, xdp->prog); - case XDP_QUERY_PROG: - xdp->prog_attached = !!edev->xdp_prog; + case XDP_QUERY_PROG: { + const struct bpf_prog *xdp_prog; + + xdp_prog = READ_ONCE(edev->xdp_prog); + if (xdp_prog) + xdp->prog_id = xdp_prog->aux->id; + else + xdp->prog_id = 0; return 0; + } default: return -EINVAL; } -- 2.9.3