Expose the block index which is sufficient to look up for the tcf_block_cb object. Signed-off-by: Pablo Neira Ayuso <pablo@xxxxxxxxxxxxx> --- drivers/net/ethernet/mscc/ocelot_tc.c | 2 +- drivers/net/ethernet/netronome/nfp/flower/offload.c | 2 +- include/net/pkt_cls.h | 2 +- net/sched/cls_api.c | 4 +--- 4 files changed, 4 insertions(+), 6 deletions(-) diff --git a/drivers/net/ethernet/mscc/ocelot_tc.c b/drivers/net/ethernet/mscc/ocelot_tc.c index e99865b873df..1a2ec5eb65a5 100644 --- a/drivers/net/ethernet/mscc/ocelot_tc.c +++ b/drivers/net/ethernet/mscc/ocelot_tc.c @@ -140,7 +140,7 @@ static int ocelot_setup_tc_block(struct ocelot_port *port, if (f->binder_type == TCF_BLOCK_BINDER_TYPE_CLSACT_INGRESS) { cb = ocelot_setup_tc_block_cb_ig; - port->tc.block_shared = tcf_block_shared(f->block); + port->tc.block_shared = f->block_shared; } else if (f->binder_type == TCF_BLOCK_BINDER_TYPE_CLSACT_EGRESS) { cb = ocelot_setup_tc_block_cb_eg; } else { diff --git a/drivers/net/ethernet/netronome/nfp/flower/offload.c b/drivers/net/ethernet/netronome/nfp/flower/offload.c index 8197bf6358aa..297ee0a9c194 100644 --- a/drivers/net/ethernet/netronome/nfp/flower/offload.c +++ b/drivers/net/ethernet/netronome/nfp/flower/offload.c @@ -1270,7 +1270,7 @@ static int nfp_flower_setup_tc_block(struct net_device *netdev, return -EOPNOTSUPP; repr_priv = repr->app_priv; - repr_priv->block_shared = tcf_block_shared(f->block); + repr_priv->block_shared = f->block_shared; switch (f->command) { case TC_BLOCK_BIND: diff --git a/include/net/pkt_cls.h b/include/net/pkt_cls.h index 2f3fac9ccf60..97d9578bc9c4 100644 --- a/include/net/pkt_cls.h +++ b/include/net/pkt_cls.h @@ -663,7 +663,7 @@ struct tc_block_offload { enum tcf_block_binder_type binder_type; struct list_head cb_list; struct net *net; - struct tcf_block *block; + bool block_shared; struct netlink_ext_ack *extack; }; diff --git a/net/sched/cls_api.c b/net/sched/cls_api.c index 6b397784eee5..ec3663511436 100644 --- a/net/sched/cls_api.c +++ b/net/sched/cls_api.c @@ -1073,7 +1073,6 @@ static void tc_indr_block_ing_cmd(struct tc_indr_block_dev *indr_dev, .command = command, .binder_type = TCF_BLOCK_BINDER_TYPE_CLSACT_INGRESS, .net = dev_net(indr_dev->dev), - .block = indr_dev->block, }; INIT_LIST_HEAD(&bo.cb_list); @@ -1164,7 +1163,6 @@ static void tc_indr_block_call(struct tcf_block *block, struct net_device *dev, .command = command, .binder_type = ei->binder_type, .net = dev_net(dev), - .block = block, .extack = extack, }; INIT_LIST_HEAD(&bo.cb_list); @@ -1195,7 +1193,7 @@ static int tcf_block_offload_cmd(struct tcf_block *block, bo.command = command; bo.binder_type = ei->binder_type; bo.net = dev_net(dev), - bo.block = block; + bo.block_shared = tcf_block_shared(block); bo.extack = extack; INIT_LIST_HEAD(&bo.cb_list); -- 2.11.0