diff options
author | Patrick McHardy <kaber@trash.net> | 2008-11-19 03:03:09 -0500 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2008-11-20 07:14:28 -0500 |
commit | 47a1a1d4be2910b13a8e90f75c17e253c39531ff (patch) | |
tree | c900f283bd96f0b26236152ada24f9a113f65e2b /net/sched/cls_basic.c | |
parent | b94c8afcba3ae6584653b98e315446ea83be6ea5 (diff) |
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_basic.c')
-rw-r--r-- | net/sched/cls_basic.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/net/sched/cls_basic.c b/net/sched/cls_basic.c index 956915c217d6..4e2bda854119 100644 --- a/net/sched/cls_basic.c +++ b/net/sched/cls_basic.c | |||
@@ -102,7 +102,7 @@ static inline void basic_delete_filter(struct tcf_proto *tp, | |||
102 | 102 | ||
103 | static void basic_destroy(struct tcf_proto *tp) | 103 | static void basic_destroy(struct tcf_proto *tp) |
104 | { | 104 | { |
105 | struct basic_head *head = (struct basic_head *) xchg(&tp->root, NULL); | 105 | struct basic_head *head = tp->root; |
106 | struct basic_filter *f, *n; | 106 | struct basic_filter *f, *n; |
107 | 107 | ||
108 | list_for_each_entry_safe(f, n, &head->flist, link) { | 108 | list_for_each_entry_safe(f, n, &head->flist, link) { |