mirror of
				git://git.openwrt.org/openwrt/openwrt.git
				synced 2025-10-31 05:54:26 -04:00 
			
		
		
		
	
		
			
				
	
	
		
			37 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			Diff
		
	
	
	
	
	
			
		
		
	
	
			37 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			Diff
		
	
	
	
	
	
| From b379135c40163ae79ba7a54e6928b53983e74ee8 Mon Sep 17 00:00:00 2001
 | |
| From: Eric Dumazet <eric.dumazet@gmail.com>
 | |
| Date: Sat, 1 Sep 2012 03:19:57 +0000
 | |
| Subject: [PATCH 307/558] fq_codel: dont reinit flow state
 | |
| 
 | |
| When fq_codel builds a new flow, it should not reset codel state.
 | |
| 
 | |
| Codel algo needs to get previous values (lastcount, drop_next) to get
 | |
| proper behavior.
 | |
| 
 | |
| Signed-off-by: Dave Taht <dave.taht@gmail.com>
 | |
| Signed-off-by: Eric Dumazet <edumazet@google.com>
 | |
| Acked-by: Dave Taht <dave.taht@bufferbloat.net>
 | |
| Signed-off-by: David S. Miller <davem@davemloft.net>
 | |
| ---
 | |
|  net/sched/sch_fq_codel.c |    2 +-
 | |
|  1 file changed, 1 insertion(+), 1 deletion(-)
 | |
| 
 | |
| --- a/net/sched/sch_fq_codel.c
 | |
| +++ b/net/sched/sch_fq_codel.c
 | |
| @@ -191,7 +191,6 @@ static int fq_codel_enqueue(struct sk_bu
 | |
|  
 | |
|  	if (list_empty(&flow->flowchain)) {
 | |
|  		list_add_tail(&flow->flowchain, &q->new_flows);
 | |
| -		codel_vars_init(&flow->cvars);
 | |
|  		q->new_flow_count++;
 | |
|  		flow->deficit = q->quantum;
 | |
|  		flow->dropped = 0;
 | |
| @@ -418,6 +417,7 @@ static int fq_codel_init(struct Qdisc *s
 | |
|  			struct fq_codel_flow *flow = q->flows + i;
 | |
|  
 | |
|  			INIT_LIST_HEAD(&flow->flowchain);
 | |
| +			codel_vars_init(&flow->cvars);
 | |
|  		}
 | |
|  	}
 | |
|  	if (sch->limit >= 1)
 |