diff options
| author | Jiri Pirko <[email protected]> | 2018-08-08 12:04:13 +0000 |
|---|---|---|
| committer | David S. Miller <[email protected]> | 2018-08-09 21:12:04 +0000 |
| commit | 63cc5bcc9fc467bbe61cc9ee52509294bdf04c4b (patch) | |
| tree | f7a846f8c2ef0d44c1c3b99b5dab3e613e28ec4b /net/sched/cls_api.c | |
| parent | decnet: fix using plain integer as NULL warning (diff) | |
| download | kernel-63cc5bcc9fc467bbe61cc9ee52509294bdf04c4b.tar.gz kernel-63cc5bcc9fc467bbe61cc9ee52509294bdf04c4b.zip | |
net: sched: fix block->refcnt decrement
Currently the refcnt is never decremented in case the value is not 1.
Fix it by adding decrement in case the refcnt is not 1.
Reported-by: Vlad Buslov <[email protected]>
Fixes: f71e0ca4db18 ("net: sched: Avoid implicit chain 0 creation")
Signed-off-by: Jiri Pirko <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
Diffstat (limited to 'net/sched/cls_api.c')
| -rw-r--r-- | net/sched/cls_api.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/net/sched/cls_api.c b/net/sched/cls_api.c index 194c2e0b2737..f922ce27ed5e 100644 --- a/net/sched/cls_api.c +++ b/net/sched/cls_api.c @@ -780,6 +780,8 @@ void tcf_block_put_ext(struct tcf_block *block, struct Qdisc *q, block->refcnt--; if (list_empty(&block->chain_list)) kfree(block); + } else { + block->refcnt--; } } EXPORT_SYMBOL(tcf_block_put_ext); |
