linux/net/sched
stephen hemminger 119b3d3869 sfq: deadlock in error path
The change to allow divisor to be a parameter (in 2.6.38-rc1)
 commit 817fb15dfd
introduced a possible deadlock caught by sparse.

The scheduler tree lock was left locked in the case of an incorrect
divisor value. Simplest fix is to move test outside of lock
which also solves problem of partial update.

Signed-off-by: Stephen Hemminger <shemminger@vyatta.com>
Acked-by: Eric Dumazet <eric.dumazet@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2011-02-02 20:51:20 -08:00
..
Kconfig Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/kaber/nf-next-2.6 2011-01-20 00:06:15 -08:00
Makefile net_sched: implement a root container qdisc sch_mqprio 2011-01-19 23:31:11 -08:00
act_api.c net_sched: cleanups 2011-01-19 23:31:12 -08:00
act_csum.c net_sched: cleanups 2011-01-19 23:31:12 -08:00
act_gact.c net_sched: cleanups 2011-01-19 23:31:12 -08:00
act_ipt.c net_sched: cleanups 2011-01-19 23:31:12 -08:00
act_mirred.c net_sched: cleanups 2011-01-19 23:31:12 -08:00
act_nat.c net_sched: cleanups 2011-01-19 23:31:12 -08:00
act_pedit.c net_sched: cleanups 2011-01-19 23:31:12 -08:00
act_police.c net_sched: cleanups 2011-01-19 23:31:12 -08:00
act_simple.c net_sched: cleanups 2011-01-19 23:31:12 -08:00
act_skbedit.c net_sched: cleanups 2011-01-19 23:31:12 -08:00
cls_api.c net_sched: cleanups 2011-01-19 23:31:12 -08:00
cls_basic.c net_sched: cleanups 2011-01-19 23:31:12 -08:00
cls_cgroup.c net_sched: cleanups 2011-01-19 23:31:12 -08:00
cls_flow.c Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/kaber/nf-next-2.6 2011-01-20 00:06:15 -08:00
cls_fw.c net_sched: cleanups 2011-01-19 23:31:12 -08:00
cls_route.c net_sched: cleanups 2011-01-19 23:31:12 -08:00
cls_rsvp.c
cls_rsvp.h net_sched: cleanups 2011-01-19 23:31:12 -08:00
cls_rsvp6.c
cls_tcindex.c net_sched: cleanups 2011-01-19 23:31:12 -08:00
cls_u32.c net_sched: cleanups 2011-01-19 23:31:12 -08:00
em_cmp.c net_sched: cleanups 2011-01-19 23:31:12 -08:00
em_meta.c Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/kaber/nf-next-2.6 2011-01-20 00:06:15 -08:00
em_nbyte.c net_sched: cleanups 2011-01-19 23:31:12 -08:00
em_text.c net_sched: cleanups 2011-01-19 23:31:12 -08:00
em_u32.c net_sched: cleanups 2011-01-19 23:31:12 -08:00
ematch.c net_sched: cleanups 2011-01-19 23:31:12 -08:00
sch_api.c net_sched: RCU conversion of stab 2011-01-20 16:59:32 -08:00
sch_atm.c net_sched: cleanups 2011-01-19 23:31:12 -08:00
sch_blackhole.c pkt_sched: Add qdisc->ops->peek() implementation. 2008-10-31 00:45:55 -07:00
sch_cbq.c Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6 2011-01-24 14:09:35 -08:00
sch_drr.c net_sched: accurate bytes/packets stats/rates 2011-01-20 23:31:33 -08:00
sch_dsmark.c Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6 2011-01-24 14:09:35 -08:00
sch_fifo.c Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6 2011-01-24 14:09:35 -08:00
sch_generic.c net_sched: TCQ_F_CAN_BYPASS generalization 2011-01-21 16:26:09 -08:00
sch_gred.c net_sched: cleanups 2011-01-19 23:31:12 -08:00
sch_hfsc.c Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6 2011-01-24 14:09:35 -08:00
sch_htb.c Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6 2011-01-24 14:09:35 -08:00
sch_ingress.c net_sched: factorize qdisc stats handling 2011-01-10 16:07:54 -08:00
sch_mq.c net_sched: TCQ_F_CAN_BYPASS generalization 2011-01-21 16:26:09 -08:00
sch_mqprio.c net_sched: sch_mqprio: dont leak kernel memory 2011-01-26 13:15:29 -08:00
sch_multiq.c Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6 2011-01-24 14:09:35 -08:00
sch_netem.c Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6 2011-01-24 14:09:35 -08:00
sch_prio.c Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6 2011-01-24 14:09:35 -08:00
sch_red.c Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6 2011-01-24 14:09:35 -08:00
sch_sfq.c sfq: deadlock in error path 2011-02-02 20:51:20 -08:00
sch_tbf.c Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6 2011-01-24 14:09:35 -08:00
sch_teql.c Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6 2011-01-24 14:09:35 -08:00