net/sched: matchall: Avoid overwriting error messages
authorIdo Schimmel <idosch@nvidia.com>
Thu, 7 Apr 2022 07:35:32 +0000 (10:35 +0300)
committerDavid S. Miller <davem@davemloft.net>
Fri, 8 Apr 2022 12:45:43 +0000 (13:45 +0100)
The various error paths of tc_setup_offload_action() now report specific
error messages. Remove the generic messages to avoid overwriting the
more specific ones.

Before:

 # tc filter add dev dummy0 ingress pref 1 proto all matchall skip_sw action police rate 100Mbit burst 10000
 Error: cls_matchall: Failed to setup flow action.
 We have an error talking to the kernel

After:

 # tc filter add dev dummy0 ingress pref 1 proto all matchall skip_sw action police rate 100Mbit burst 10000
 Error: act_police: Offload not supported when conform/exceed action is "reclassify".
 We have an error talking to the kernel

Signed-off-by: Ido Schimmel <idosch@nvidia.com>
Reviewed-by: Petr Machata <petrm@nvidia.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/sched/cls_matchall.c

index 7553443..06cf22a 100644 (file)
@@ -102,8 +102,6 @@ static int mall_replace_hw_filter(struct tcf_proto *tp,
        if (err) {
                kfree(cls_mall.rule);
                mall_destroy_hw_filter(tp, head, cookie, NULL);
-               NL_SET_ERR_MSG_MOD(cls_mall.common.extack,
-                                  "Failed to setup flow action");
 
                return skip_sw ? err : 0;
        }
@@ -305,8 +303,6 @@ static int mall_reoffload(struct tcf_proto *tp, bool add, flow_setup_cb_t *cb,
                                      cls_mall.common.extack);
        if (err) {
                kfree(cls_mall.rule);
-               NL_SET_ERR_MSG_MOD(cls_mall.common.extack,
-                                  "Failed to setup flow action");
 
                return add && tc_skip_sw(head->flags) ? err : 0;
        }