summaryrefslogtreecommitdiff
path: root/net/sched/sch_red.c
diff options
context:
space:
mode:
authorJiri Pirko <jiri@mellanox.com>2020-03-28 16:37:42 +0100
committerDavid S. Miller <davem@davemloft.net>2020-03-30 11:06:49 -0700
commit8953b0770ff4e3038a6d4df3cc021f9bfb47548a (patch)
tree3a99e78f5accc546792f7b5e89637eb94bd26c1a /net/sched/sch_red.c
parentacc086bfb957542be49a8165eb794bc74f6cb51b (diff)
net: introduce nla_put_bitfield32() helper and use it
Introduce a helper to pass value and selector to. The helper packs them into struct and puts them into netlink message. Signed-off-by: Jiri Pirko <jiri@mellanox.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/sched/sch_red.c')
-rw-r--r--net/sched/sch_red.c7
1 files changed, 2 insertions, 5 deletions
diff --git a/net/sched/sch_red.c b/net/sched/sch_red.c
index 3ef0a4f7399b..c7de47c942e3 100644
--- a/net/sched/sch_red.c
+++ b/net/sched/sch_red.c
@@ -349,10 +349,6 @@ static int red_dump_offload_stats(struct Qdisc *sch)
static int red_dump(struct Qdisc *sch, struct sk_buff *skb)
{
struct red_sched_data *q = qdisc_priv(sch);
- struct nla_bitfield32 flags_bf = {
- .selector = red_supported_flags,
- .value = q->flags,
- };
struct nlattr *opts = NULL;
struct tc_red_qopt opt = {
.limit = q->limit,
@@ -375,7 +371,8 @@ static int red_dump(struct Qdisc *sch, struct sk_buff *skb)
goto nla_put_failure;
if (nla_put(skb, TCA_RED_PARMS, sizeof(opt), &opt) ||
nla_put_u32(skb, TCA_RED_MAX_P, q->parms.max_P) ||
- nla_put(skb, TCA_RED_FLAGS, sizeof(flags_bf), &flags_bf))
+ nla_put_bitfield32(skb, TCA_RED_FLAGS,
+ q->flags, red_supported_flags))
goto nla_put_failure;
return nla_nest_end(skb, opts);