From 865ec5523dadbedefbc5710a68969f686a28d928 Mon Sep 17 00:00:00 2001 From: Eric Dumazet Date: Wed, 16 May 2012 04:39:09 +0000 Subject: fq_codel: should use qdisc backlog as threshold codel_should_drop() logic allows a packet being not dropped if queue size is under max packet size. In fq_codel, we have two possible backlogs : The qdisc global one, and the flow local one. The meaningful one for codel_should_drop() should be the global backlog, not the per flow one, so that thin flows can have a non zero drop/mark probability. Signed-off-by: Eric Dumazet Cc: Dave Taht Cc: Kathleen Nichols Cc: Van Jacobson Signed-off-by: David S. Miller --- net/sched/sch_codel.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'net/sched/sch_codel.c') diff --git a/net/sched/sch_codel.c b/net/sched/sch_codel.c index 213ef60bced8..2f9ab17db85a 100644 --- a/net/sched/sch_codel.c +++ b/net/sched/sch_codel.c @@ -77,8 +77,8 @@ static struct sk_buff *codel_qdisc_dequeue(struct Qdisc *sch) struct codel_sched_data *q = qdisc_priv(sch); struct sk_buff *skb; - skb = codel_dequeue(sch, &q->params, &q->vars, &q->stats, - dequeue, &sch->qstats.backlog); + skb = codel_dequeue(sch, &q->params, &q->vars, &q->stats, dequeue); + /* We cant call qdisc_tree_decrease_qlen() if our qlen is 0, * or HTB crashes. Defer it for next round. */ -- cgit v1.2.3-59-g8ed1b