[PKT_SCHED]: Fix missing qdisc_destroy() in qdisc_create_dflt()
authorThomas Graf <tgraf@suug.ch>
Tue, 23 Aug 2005 17:12:44 +0000 (10:12 -0700)
committerDavid S. Miller <davem@davemloft.net>
Tue, 23 Aug 2005 17:12:44 +0000 (10:12 -0700)
commit0fbbeb1ba43bd04f0f1d4f161b7f72437a1c8a03
tree80aff375f2b1de10a69743d73977df39f356dda5
parentd2287f844187158e5eddd0d5de8e95bd607abcb7
[PKT_SCHED]: Fix missing qdisc_destroy() in qdisc_create_dflt()

qdisc_create_dflt() is missing to destroy the newly allocated
default qdisc if the initialization fails resulting in leaks
of all kinds. The only caller in mainline which may trigger
this bug is sch_tbf.c in tbf_create_dflt_qdisc().

Note: qdisc_create_dflt() doesn't fulfill the official locking
      requirements of qdisc_destroy() but since the qdisc could
      never be seen by the outside world this doesn't matter
      and it can stay as-is until the locking of pkt_sched
      is cleaned up.

Signed-off-by: Thomas Graf <tgraf@suug.ch>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/sched/sch_generic.c