diff options
author | David S. Miller <davem@davemloft.net> | 2008-07-25 01:25:04 -0700 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2008-07-25 01:25:04 -0700 |
commit | cffe1c5d7a5a1e54f7c2c6d0510f651a965bccc3 (patch) | |
tree | 8d016589486306d406f12ed6b8d85f4be59e460d /net | |
parent | f867e6af94239a04ec23aeec2fcda5aa58e41db7 (diff) | |
download | linux-stable-cffe1c5d7a5a1e54f7c2c6d0510f651a965bccc3.tar.gz linux-stable-cffe1c5d7a5a1e54f7c2c6d0510f651a965bccc3.tar.bz2 linux-stable-cffe1c5d7a5a1e54f7c2c6d0510f651a965bccc3.zip |
pkt_sched: Fix locking in shutdown_scheduler_queue()
Qdisc locks need to be held with BH disabled.
Tested-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net')
-rw-r--r-- | net/sched/sch_generic.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/net/sched/sch_generic.c b/net/sched/sch_generic.c index 4ac7e3a8c253..43abd4d27ea6 100644 --- a/net/sched/sch_generic.c +++ b/net/sched/sch_generic.c @@ -736,9 +736,9 @@ static void shutdown_scheduler_queue(struct net_device *dev, dev_queue->qdisc = qdisc_default; dev_queue->qdisc_sleeping = qdisc_default; - spin_lock(root_lock); + spin_lock_bh(root_lock); qdisc_destroy(qdisc); - spin_unlock(root_lock); + spin_unlock_bh(root_lock); } } |