Add support to ixgbe to report bpf_prog ID during XDP_QUERY_PROG. Signed-off-by: Martin KaFai Lau <ka...@fb.com> Cc: Alexander Duyck <alexander.h.du...@intel.com> Cc: John Fastabend <john.fastab...@gmail.com> Acked-by: Alexei Starovoitov <a...@fb.com> Acked-by: Daniel Borkmann <dan...@iogearbox.net> --- drivers/net/ethernet/intel/ixgbe/ixgbe_main.c | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-)
diff --git a/drivers/net/ethernet/intel/ixgbe/ixgbe_main.c b/drivers/net/ethernet/intel/ixgbe/ixgbe_main.c index 812319ab77db..37b0e5a741d8 100644 --- a/drivers/net/ethernet/intel/ixgbe/ixgbe_main.c +++ b/drivers/net/ethernet/intel/ixgbe/ixgbe_main.c @@ -9799,9 +9799,19 @@ static int ixgbe_xdp(struct net_device *dev, struct netdev_xdp *xdp) switch (xdp->command) { case XDP_SETUP_PROG: return ixgbe_xdp_setup(dev, xdp->prog); - case XDP_QUERY_PROG: - xdp->prog_attached = !!(adapter->xdp_prog); + case XDP_QUERY_PROG: { + const struct bpf_prog *xdp_prog; + + xdp_prog = adapter->xdp_prog; + if (xdp_prog) { + xdp->prog_id = xdp_prog->aux->id; + xdp->prog_attached = true; + } else { + xdp->prog_id = 0; + xdp->prog_attached = false; + } return 0; + } default: return -EINVAL; } -- 2.9.3