mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git
synced 2024-12-28 16:52:18 +00:00
net/sched: act_api: unexport tcf_action_dump_1()
This isn't used outside act_api.c, but is called by tcf_dump_walker() prior to its definition. So move it upwards and make it static. Simultaneously, reorder the variable declarations so that they follow the networking "reverse Christmas tree" coding style. Signed-off-by: Vladimir Oltean <vladimir.oltean@nxp.com> Reviewed-by: Simon Horman <horms@kernel.org> Reviewed-by: Toke Høiland-Jørgensen <toke@redhat.com> Link: https://patch.msgid.link/20241017161934.3599046-1-vladimir.oltean@nxp.com Signed-off-by: Paolo Abeni <pabeni@redhat.com>
This commit is contained in:
parent
94fa523e20
commit
83c289e81e
@ -219,7 +219,6 @@ struct tc_action *tcf_action_init_1(struct net *net, struct tcf_proto *tp,
|
||||
int tcf_action_dump(struct sk_buff *skb, struct tc_action *actions[], int bind,
|
||||
int ref, bool terse);
|
||||
int tcf_action_dump_old(struct sk_buff *skb, struct tc_action *a, int, int);
|
||||
int tcf_action_dump_1(struct sk_buff *skb, struct tc_action *a, int, int);
|
||||
|
||||
static inline void tcf_action_update_bstats(struct tc_action *a,
|
||||
struct sk_buff *skb)
|
||||
|
@ -504,6 +504,50 @@ tcf_action_dump_terse(struct sk_buff *skb, struct tc_action *a, bool from_act)
|
||||
return -1;
|
||||
}
|
||||
|
||||
static int
|
||||
tcf_action_dump_1(struct sk_buff *skb, struct tc_action *a, int bind, int ref)
|
||||
{
|
||||
unsigned char *b = skb_tail_pointer(skb);
|
||||
struct nlattr *nest;
|
||||
int err = -EINVAL;
|
||||
u32 flags;
|
||||
|
||||
if (tcf_action_dump_terse(skb, a, false))
|
||||
goto nla_put_failure;
|
||||
|
||||
if (a->hw_stats != TCA_ACT_HW_STATS_ANY &&
|
||||
nla_put_bitfield32(skb, TCA_ACT_HW_STATS,
|
||||
a->hw_stats, TCA_ACT_HW_STATS_ANY))
|
||||
goto nla_put_failure;
|
||||
|
||||
if (a->used_hw_stats_valid &&
|
||||
nla_put_bitfield32(skb, TCA_ACT_USED_HW_STATS,
|
||||
a->used_hw_stats, TCA_ACT_HW_STATS_ANY))
|
||||
goto nla_put_failure;
|
||||
|
||||
flags = a->tcfa_flags & TCA_ACT_FLAGS_USER_MASK;
|
||||
if (flags &&
|
||||
nla_put_bitfield32(skb, TCA_ACT_FLAGS,
|
||||
flags, flags))
|
||||
goto nla_put_failure;
|
||||
|
||||
if (nla_put_u32(skb, TCA_ACT_IN_HW_COUNT, a->in_hw_count))
|
||||
goto nla_put_failure;
|
||||
|
||||
nest = nla_nest_start_noflag(skb, TCA_ACT_OPTIONS);
|
||||
if (nest == NULL)
|
||||
goto nla_put_failure;
|
||||
err = tcf_action_dump_old(skb, a, bind, ref);
|
||||
if (err > 0) {
|
||||
nla_nest_end(skb, nest);
|
||||
return err;
|
||||
}
|
||||
|
||||
nla_put_failure:
|
||||
nlmsg_trim(skb, b);
|
||||
return -1;
|
||||
}
|
||||
|
||||
static int tcf_dump_walker(struct tcf_idrinfo *idrinfo, struct sk_buff *skb,
|
||||
struct netlink_callback *cb)
|
||||
{
|
||||
@ -1190,51 +1234,6 @@ tcf_action_dump_old(struct sk_buff *skb, struct tc_action *a, int bind, int ref)
|
||||
return a->ops->dump(skb, a, bind, ref);
|
||||
}
|
||||
|
||||
int
|
||||
tcf_action_dump_1(struct sk_buff *skb, struct tc_action *a, int bind, int ref)
|
||||
{
|
||||
int err = -EINVAL;
|
||||
unsigned char *b = skb_tail_pointer(skb);
|
||||
struct nlattr *nest;
|
||||
u32 flags;
|
||||
|
||||
if (tcf_action_dump_terse(skb, a, false))
|
||||
goto nla_put_failure;
|
||||
|
||||
if (a->hw_stats != TCA_ACT_HW_STATS_ANY &&
|
||||
nla_put_bitfield32(skb, TCA_ACT_HW_STATS,
|
||||
a->hw_stats, TCA_ACT_HW_STATS_ANY))
|
||||
goto nla_put_failure;
|
||||
|
||||
if (a->used_hw_stats_valid &&
|
||||
nla_put_bitfield32(skb, TCA_ACT_USED_HW_STATS,
|
||||
a->used_hw_stats, TCA_ACT_HW_STATS_ANY))
|
||||
goto nla_put_failure;
|
||||
|
||||
flags = a->tcfa_flags & TCA_ACT_FLAGS_USER_MASK;
|
||||
if (flags &&
|
||||
nla_put_bitfield32(skb, TCA_ACT_FLAGS,
|
||||
flags, flags))
|
||||
goto nla_put_failure;
|
||||
|
||||
if (nla_put_u32(skb, TCA_ACT_IN_HW_COUNT, a->in_hw_count))
|
||||
goto nla_put_failure;
|
||||
|
||||
nest = nla_nest_start_noflag(skb, TCA_ACT_OPTIONS);
|
||||
if (nest == NULL)
|
||||
goto nla_put_failure;
|
||||
err = tcf_action_dump_old(skb, a, bind, ref);
|
||||
if (err > 0) {
|
||||
nla_nest_end(skb, nest);
|
||||
return err;
|
||||
}
|
||||
|
||||
nla_put_failure:
|
||||
nlmsg_trim(skb, b);
|
||||
return -1;
|
||||
}
|
||||
EXPORT_SYMBOL(tcf_action_dump_1);
|
||||
|
||||
int tcf_action_dump(struct sk_buff *skb, struct tc_action *actions[],
|
||||
int bind, int ref, bool terse)
|
||||
{
|
||||
|
Loading…
Reference in New Issue
Block a user