summaryrefslogtreecommitdiff
path: root/net/sched
diff options
context:
space:
mode:
authorYang Yingliang <yangyingliang@huawei.com>2021-06-17 11:02:07 +0300
committerDavid S. Miller <davem@davemloft.net>2021-06-17 21:36:18 +0300
commit55d96f72e8ddc0a294e0b9c94016edbb699537e1 (patch)
tree6d06171cf62aed2b4e59f73f45c670196fe51c39 /net/sched
parentb244163f2c45c12053cb0291c955f892e79ed8a9 (diff)
downloadlinux-55d96f72e8ddc0a294e0b9c94016edbb699537e1.tar.xz
net: sched: fix error return code in tcf_del_walker()
When nla_put_u32() fails, 'ret' could be 0, it should return error code in tcf_del_walker(). Reported-by: Hulk Robot <hulkci@huawei.com> Signed-off-by: Yang Yingliang <yangyingliang@huawei.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/sched')
-rw-r--r--net/sched/act_api.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/net/sched/act_api.c b/net/sched/act_api.c
index f6d5755d669e..d17a66aab8ee 100644
--- a/net/sched/act_api.c
+++ b/net/sched/act_api.c
@@ -381,7 +381,8 @@ static int tcf_del_walker(struct tcf_idrinfo *idrinfo, struct sk_buff *skb,
}
mutex_unlock(&idrinfo->lock);
- if (nla_put_u32(skb, TCA_FCNT, n_i))
+ ret = nla_put_u32(skb, TCA_FCNT, n_i);
+ if (ret)
goto nla_put_failure;
nla_nest_end(skb, nest);