diff options
author | Patrick McHardy <kaber@trash.net> | 2007-03-23 14:29:43 -0400 |
---|---|---|
committer | David S. Miller <davem@sunset.davemloft.net> | 2007-04-26 01:27:56 -0400 |
commit | a48b5a61448899040dfbd2e0cd55b06a2bd2466c (patch) | |
tree | b7efde642bde0eec3cb7171fdda38de349e409ff /net/sched/sch_dsmark.c | |
parent | 3bebcda28077375470dd60545b71bba2f83335fd (diff) |
[NET_SCHED]: Unline tcf_destroy
Uninline tcf_destroy and add a helper function to destroy an entire filter
chain.
Signed-off-by: Patrick McHardy <kaber@trash.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/sched/sch_dsmark.c')
-rw-r--r-- | net/sched/sch_dsmark.c | 8 |
1 files changed, 1 insertions, 7 deletions
diff --git a/net/sched/sch_dsmark.c b/net/sched/sch_dsmark.c index 2c857af79a1e..e38e0d00d1e6 100644 --- a/net/sched/sch_dsmark.c +++ b/net/sched/sch_dsmark.c | |||
@@ -412,16 +412,10 @@ static void dsmark_reset(struct Qdisc *sch) | |||
412 | static void dsmark_destroy(struct Qdisc *sch) | 412 | static void dsmark_destroy(struct Qdisc *sch) |
413 | { | 413 | { |
414 | struct dsmark_qdisc_data *p = PRIV(sch); | 414 | struct dsmark_qdisc_data *p = PRIV(sch); |
415 | struct tcf_proto *tp; | ||
416 | 415 | ||
417 | DPRINTK("dsmark_destroy(sch %p,[qdisc %p])\n", sch, p); | 416 | DPRINTK("dsmark_destroy(sch %p,[qdisc %p])\n", sch, p); |
418 | 417 | ||
419 | while (p->filter_list) { | 418 | tcf_destroy_chain(p->filter_list); |
420 | tp = p->filter_list; | ||
421 | p->filter_list = tp->next; | ||
422 | tcf_destroy(tp); | ||
423 | } | ||
424 | |||
425 | qdisc_destroy(p->q); | 419 | qdisc_destroy(p->q); |
426 | kfree(p->mask); | 420 | kfree(p->mask); |
427 | } | 421 | } |