Flower support for the "in hw" offloading flags. Signed-off-by: Or Gerlitz <ogerl...@mellanox.com> Reviewed-by: Amir Vadai <a...@vadai.me> Acked-by: Jiri Pirko <j...@mellanox.com> --- net/sched/cls_flower.c | 5 +++++ 1 file changed, 5 insertions(+)
diff --git a/net/sched/cls_flower.c b/net/sched/cls_flower.c index 850d982..9270c5b 100644 --- a/net/sched/cls_flower.c +++ b/net/sched/cls_flower.c @@ -273,6 +273,8 @@ static int fl_hw_replace_filter(struct tcf_proto *tp, err = dev->netdev_ops->ndo_setup_tc(dev, tp->q->handle, tp->protocol, tc); + if (!err) + f->flags |= TCA_CLS_FLAGS_IN_HW; if (tc_skip_sw(f->flags)) return err; @@ -912,6 +914,9 @@ static int fl_change(struct net *net, struct sk_buff *in_skb, goto errout; } + if (!(tc_in_hw(fnew->flags))) + fnew->flags |= TCA_CLS_FLAGS_NOT_IN_HW; + if (fold) { if (!tc_skip_sw(fold->flags)) rhashtable_remove_fast(&head->ht, &fold->ht_node, -- 2.3.7