summaryrefslogtreecommitdiff
path: root/net/sched/cls_cgroup.c
diff options
context:
space:
mode:
authorPatrick McHardy <kaber@trash.net>2008-11-19 08:03:09 (GMT)
committerDavid S. Miller <davem@davemloft.net>2008-11-20 12:14:28 (GMT)
commit47a1a1d4be2910b13a8e90f75c17e253c39531ff (patch)
treec900f283bd96f0b26236152ada24f9a113f65e2b /net/sched/cls_cgroup.c
parentb94c8afcba3ae6584653b98e315446ea83be6ea5 (diff)
downloadlinux-47a1a1d4be2910b13a8e90f75c17e253c39531ff.tar.xz
pkt_sched: remove unnecessary xchg() in packet classifiers
The use of xchg() hasn't been necessary since 2.2.something when proper locking was added to packet schedulers. In the case of classifiers they mostly weren't even necessary before that since they're mainly used to assign a NULL pointer to the filter root in the ->destroy path; the root is destroyed immediately after that. Signed-off-by: Patrick McHardy <kaber@trash.net> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/sched/cls_cgroup.c')
-rw-r--r--net/sched/cls_cgroup.c4
1 files changed, 1 insertions, 3 deletions
diff --git a/net/sched/cls_cgroup.c b/net/sched/cls_cgroup.c
index 53ada2c..0d68b19 100644
--- a/net/sched/cls_cgroup.c
+++ b/net/sched/cls_cgroup.c
@@ -201,9 +201,7 @@ static int cls_cgroup_change(struct tcf_proto *tp, unsigned long base,
static void cls_cgroup_destroy(struct tcf_proto *tp)
{
- struct cls_cgroup_head *head;
-
- head = (struct cls_cgroup_head *)xchg(&tp->root, NULL);
+ struct cls_cgroup_head *head = tp->root;
if (head) {
tcf_exts_destroy(tp, &head->exts);