X-Git-Url: https://gerrit.opnfv.org/gerrit/gitweb?a=blobdiff_plain;f=kernel%2Fnet%2Fsched%2Fcls_cgroup.c;fp=kernel%2Fnet%2Fsched%2Fcls_cgroup.c;h=c104c2019feb6245154a9149d4f685b1ab23cd18;hb=52f993b8e89487ec9ee15a7fb4979e0f09a45b27;hp=4c85bd3a750cbb02c743779f28cbde6ceacb5ecf;hpb=c189ccac5702322ed843fe17057035b7222a59b6;p=kvmfornfv.git diff --git a/kernel/net/sched/cls_cgroup.c b/kernel/net/sched/cls_cgroup.c index 4c85bd3a7..c104c2019 100644 --- a/kernel/net/sched/cls_cgroup.c +++ b/kernel/net/sched/cls_cgroup.c @@ -130,11 +130,10 @@ static bool cls_cgroup_destroy(struct tcf_proto *tp, bool force) if (!force) return false; - - if (head) { - RCU_INIT_POINTER(tp->root, NULL); + /* Head can still be NULL due to cls_cgroup_init(). */ + if (head) call_rcu(&head->rcu, cls_cgroup_destroy_rcu); - } + return true; }