]> git.baikalelectronics.ru Git - kernel.git/commit
pkt_sched: Don't hold qdisc lock over qdisc_destroy().
authorDavid S. Miller <davem@davemloft.net>
Tue, 19 Aug 2008 04:03:15 +0000 (21:03 -0700)
committerDavid S. Miller <davem@davemloft.net>
Tue, 19 Aug 2008 04:06:19 +0000 (21:06 -0700)
commit3851672c3f922ba7b2b526a043391265ffebe39e
tree502b355314b1ff2e6cef52bf3778aba3bdae80cd
parent2d269747e4fe849da6599553256ebf916353c66a
pkt_sched: Don't hold qdisc lock over qdisc_destroy().

Based upon reports by Denys Fedoryshchenko, and feedback
and help from Jarek Poplawski and Herbert Xu.

We always either:

1) Never made an external reference to this qdisc.

or

2) Did a dev_deactivate() which purged all asynchronous
   references.

So do not lock the qdisc when we call qdisc_destroy(),
it's illegal anyways as when we drop the lock this is
free'd memory.

Signed-off-by: David S. Miller <davem@davemloft.net>
net/sched/sch_api.c
net/sched/sch_generic.c