diff options
Diffstat (limited to 'net/sched')
-rw-r--r-- | net/sched/sch_generic.c | 4 |
1 files changed, 1 insertions, 3 deletions
diff --git a/net/sched/sch_generic.c b/net/sched/sch_generic.c index d253c16a314..69fca279880 100644 --- a/net/sched/sch_generic.c +++ b/net/sched/sch_generic.c @@ -190,16 +190,14 @@ static inline int qdisc_restart(struct Qdisc *q) void __qdisc_run(struct Qdisc *q) { int quota = weight_p; - int work = 0; while (qdisc_restart(q)) { - work++; /* * Ordered by possible occurrence: Postpone processing if * 1. we've exceeded packet quota * 2. another process needs the CPU; */ - if (work >= quota || need_resched()) { + if (--quota <= 0 || need_resched()) { __netif_schedule(q); break; } |