diff options
author | Pedro Tammela <pctammela@mojatatu.com> | 2022-12-06 14:55:12 +0100 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2022-12-09 10:18:07 +0100 |
commit | 871cf386dd16705b1e08942efd02c58801293d01 (patch) | |
tree | 5aa639cf8129d1e5f78cefe0f48ee18a7c098985 /net/sched/act_skbedit.c | |
parent | net/sched: add retpoline wrapper for tc (diff) | |
download | linux-871cf386dd16705b1e08942efd02c58801293d01.tar.xz linux-871cf386dd16705b1e08942efd02c58801293d01.zip |
net/sched: avoid indirect act functions on retpoline kernels
Expose the necessary tc act functions and wire up act_api to use
direct calls in retpoline kernels.
Signed-off-by: Pedro Tammela <pctammela@mojatatu.com>
Reviewed-by: Jamal Hadi Salim <jhs@mojatatu.com>
Reviewed-by: Victor Nogueira <victor@mojatatu.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/sched/act_skbedit.c')
-rw-r--r-- | net/sched/act_skbedit.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/net/sched/act_skbedit.c b/net/sched/act_skbedit.c index 1710780c908a..ce7008cf291c 100644 --- a/net/sched/act_skbedit.c +++ b/net/sched/act_skbedit.c @@ -16,6 +16,7 @@ #include <net/ipv6.h> #include <net/dsfield.h> #include <net/pkt_cls.h> +#include <net/tc_wrapper.h> #include <linux/tc_act/tc_skbedit.h> #include <net/tc_act/tc_skbedit.h> @@ -36,8 +37,9 @@ static u16 tcf_skbedit_hash(struct tcf_skbedit_params *params, return netdev_cap_txqueue(skb->dev, queue_mapping); } -static int tcf_skbedit_act(struct sk_buff *skb, const struct tc_action *a, - struct tcf_result *res) +TC_INDIRECT_SCOPE int tcf_skbedit_act(struct sk_buff *skb, + const struct tc_action *a, + struct tcf_result *res) { struct tcf_skbedit *d = to_skbedit(a); struct tcf_skbedit_params *params; |