summaryrefslogtreecommitdiff
path: root/net/sched/cls_tcindex.c
diff options
context:
space:
mode:
authorVinod Koul <vkoul@kernel.org>2021-08-09 07:38:37 +0300
committerVinod Koul <vkoul@kernel.org>2021-08-09 07:38:37 +0300
commit9760383b22edbfa407a1647969c26d62a501631f (patch)
tree7bc0a440bec121c0bf3fc1f198fa5646eef751f2 /net/sched/cls_tcindex.c
parent9fce3b3a0ab4cad407a27b5e36603c23f1b5b278 (diff)
parent36a21d51725af2ce0700c6ebcb6b9594aac658a6 (diff)
downloadlinux-9760383b22edbfa407a1647969c26d62a501631f.tar.xz
Merge tag 'v5.14-rc5' into next
Linux 5.14-rc5
Diffstat (limited to 'net/sched/cls_tcindex.c')
-rw-r--r--net/sched/cls_tcindex.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/net/sched/cls_tcindex.c b/net/sched/cls_tcindex.c
index 5b274534264c..e9a8a2c86bbd 100644
--- a/net/sched/cls_tcindex.c
+++ b/net/sched/cls_tcindex.c
@@ -278,6 +278,8 @@ static int tcindex_filter_result_init(struct tcindex_filter_result *r,
TCA_TCINDEX_POLICE);
}
+static void tcindex_free_perfect_hash(struct tcindex_data *cp);
+
static void tcindex_partial_destroy_work(struct work_struct *work)
{
struct tcindex_data *p = container_of(to_rcu_work(work),
@@ -285,7 +287,8 @@ static void tcindex_partial_destroy_work(struct work_struct *work)
rwork);
rtnl_lock();
- kfree(p->perfect);
+ if (p->perfect)
+ tcindex_free_perfect_hash(p);
kfree(p);
rtnl_unlock();
}