diff options
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 | } |