diff options
author | H. Peter Anvin <hpa@zytor.com> | 2008-08-26 01:45:37 -0400 |
---|---|---|
committer | H. Peter Anvin <hpa@zytor.com> | 2008-08-26 01:45:37 -0400 |
commit | 94d4ac2f4a58c6e37876827c6688c61cef21290c (patch) | |
tree | 732f4e4794f3c116041242f69754637f75c0dd57 /net/sched/sch_cbq.c | |
parent | ed21763e7b0b3fb50e4efd9d4bc17ef5b035d304 (diff) | |
parent | 08970fc4e0385790a7b093adfaa4165a189f9eb0 (diff) |
Merge branch 'x86/urgent' into x86/cleanups
Diffstat (limited to 'net/sched/sch_cbq.c')
-rw-r--r-- | net/sched/sch_cbq.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/net/sched/sch_cbq.c b/net/sched/sch_cbq.c index 4e261ce62f48..8fa90d68ec6d 100644 --- a/net/sched/sch_cbq.c +++ b/net/sched/sch_cbq.c | |||
@@ -521,6 +521,10 @@ static void cbq_ovl_delay(struct cbq_class *cl) | |||
521 | struct cbq_sched_data *q = qdisc_priv(cl->qdisc); | 521 | struct cbq_sched_data *q = qdisc_priv(cl->qdisc); |
522 | psched_tdiff_t delay = cl->undertime - q->now; | 522 | psched_tdiff_t delay = cl->undertime - q->now; |
523 | 523 | ||
524 | if (test_bit(__QDISC_STATE_DEACTIVATED, | ||
525 | &qdisc_root_sleeping(cl->qdisc)->state)) | ||
526 | return; | ||
527 | |||
524 | if (!cl->delayed) { | 528 | if (!cl->delayed) { |
525 | psched_time_t sched = q->now; | 529 | psched_time_t sched = q->now; |
526 | ktime_t expires; | 530 | ktime_t expires; |
@@ -654,7 +658,7 @@ static enum hrtimer_restart cbq_undelay(struct hrtimer *timer) | |||
654 | } | 658 | } |
655 | 659 | ||
656 | sch->flags &= ~TCQ_F_THROTTLED; | 660 | sch->flags &= ~TCQ_F_THROTTLED; |
657 | __netif_schedule(sch); | 661 | __netif_schedule(qdisc_root(sch)); |
658 | return HRTIMER_NORESTART; | 662 | return HRTIMER_NORESTART; |
659 | } | 663 | } |
660 | 664 | ||