diff options
| author | David S. Miller <davem@davemloft.net> | 2008-07-25 04:25:04 -0400 |
|---|---|---|
| committer | David S. Miller <davem@davemloft.net> | 2008-07-25 04:25:04 -0400 |
| commit | cffe1c5d7a5a1e54f7c2c6d0510f651a965bccc3 (patch) | |
| tree | 8d016589486306d406f12ed6b8d85f4be59e460d | |
| parent | f867e6af94239a04ec23aeec2fcda5aa58e41db7 (diff) | |
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>
| -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, | |||
| 736 | dev_queue->qdisc = qdisc_default; | 736 | dev_queue->qdisc = qdisc_default; |
| 737 | dev_queue->qdisc_sleeping = qdisc_default; | 737 | dev_queue->qdisc_sleeping = qdisc_default; |
| 738 | 738 | ||
| 739 | spin_lock(root_lock); | 739 | spin_lock_bh(root_lock); |
| 740 | qdisc_destroy(qdisc); | 740 | qdisc_destroy(qdisc); |
| 741 | spin_unlock(root_lock); | 741 | spin_unlock_bh(root_lock); |
| 742 | } | 742 | } |
| 743 | } | 743 | } |
| 744 | 744 | ||
