projects
/
firefly-linux-kernel-4.4.55.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
| inline |
side by side
net, sched: respect rcu grace period on cls destruction
[firefly-linux-kernel-4.4.55.git]
/
net
/
sched
/
cls_cgroup.c
diff --git
a/net/sched/cls_cgroup.c
b/net/sched/cls_cgroup.c
index 4c85bd3a750cbb02c743779f28cbde6ceacb5ecf..c104c2019feb6245154a9149d4f685b1ab23cd18 100644
(file)
--- a/
net/sched/cls_cgroup.c
+++ b/
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;
}