]> asedeno.scripts.mit.edu Git - linux.git/commitdiff
nfp: bpf: allow disabling TC offloads when XDP active
authorJakub Kicinski <jakub.kicinski@netronome.com>
Wed, 10 Jan 2018 12:25:58 +0000 (12:25 +0000)
committerDaniel Borkmann <daniel@iogearbox.net>
Wed, 10 Jan 2018 12:49:35 +0000 (13:49 +0100)
TC BPF offload was added first, so we used to assume that
the ethtool TC HW offload flag cannot be touched whenever
any BPF program is loaded on the NIC.  This unncessarily
limits changes to the TC flag when offloaded program is XDP.

Signed-off-by: Jakub Kicinski <jakub.kicinski@netronome.com>
Signed-off-by: Daniel Borkmann <daniel@iogearbox.net>
drivers/net/ethernet/netronome/nfp/bpf/main.c

index 978086580ca018032ca5298fa233ec5640c59b32..50b16b6cad0bc2b1474b10b020114bafb6f39eeb 100644 (file)
@@ -191,7 +191,9 @@ static int nfp_bpf_setup_tc(struct nfp_app *app, struct net_device *netdev,
 
 static bool nfp_bpf_tc_busy(struct nfp_app *app, struct nfp_net *nn)
 {
-       return nn->dp.ctrl & NFP_NET_CFG_CTRL_BPF;
+       struct nfp_bpf_vnic *bv = nn->app_priv;
+
+       return !!bv->tc_prog;
 }
 
 static int