Re: [PATCH] sched: QFQ - quick fair queue scheduler (v2)

Eric Dumazet
2011-03-03T10:40:26Z

Le jeudi 03 mars 2011 à 09:27 +0100, Eric Dumazet a écrit :

> I am going to test an updated version, thanks for all these hints !
>

Same problem in qfq_qlen_notify()

Should use :

struct qfq_sched *q = qdisc_priv(sch);

After a stress (and no more trafic) I still have some packets in
backlog:

(8 packets here)

# tc -s -d qdisc show dev dummy0
qdisc cbq 1: root refcnt 2 rate 1000Mbit cell 8b (bounded,isolated) prio no-transmit/8 weight 1000Mbit allot 1514b
level 2 ewma 5 avpkt 1000b maxidle 0us
Sent 109916000 bytes 549580 pkt (dropped 350412, overlimits 1180608 requeues 0)
backlog 0b 8p requeues 0
borrowed 0 overactions 0 avgidle 125 undertime 0
qdisc qfq 11: parent 1:11
Sent 109916000 bytes 549580 pkt (dropped 350412, overlimits 0 requeues 0)
rate 2848bit 2pps backlog 0b 8p requeues 0
# tc -s -d class show dev dummy0
class cbq 1:11 parent 1:1 leaf 11: rate 40000Kbit cell 128b mpu 64b (bounded) prio 2/2 weight 40000Kbit allot 20000b
level 0 ewma 5 avpkt 1400b maxidle 0us
Sent 109916000 bytes 549580 pkt (dropped 350412, overlimits 675712 requeues 0)
rate 1516Kbit 947pps backlog 0b 8p requeues 0
borrowed 0 overactions 285254 avgidle -22 undertime -24
class cbq 1: root rate 1000Mbit cell 8b (bounded,isolated) prio no-transmit/8 weight 1000Mbit allot 1514b
level 2 ewma 5 avpkt 1000b maxidle 0us
Sent 109916000 bytes 549580 pkt (dropped 0, overlimits 0 requeues 0)
backlog 0b 0p requeues 0
borrowed 0 overactions 0 avgidle 125 undertime 0
class cbq 1:1 parent 1: rate 1000Mbit cell 64b mpu 64b (bounded) prio 1/1 weight 1000Mbit allot 10000b
level 1 ewma 5 avpkt 1500b maxidle 0us
Sent 109916000 bytes 549580 pkt (dropped 0, overlimits 0 requeues 0)
rate 1516Kbit 947pps backlog 0b 0p requeues 0
borrowed 0 overactions 0 avgidle 125 undertime 0
class qfq 11:10 root weight 1600 maxpkt 2048
Sent 200 bytes 1 pkt (dropped 18181, overlimits 0 requeues 0)
rate 0bit 0pps backlog 200b 0p requeues 0
class qfq 11:1 root weight 100 maxpkt 1100
Sent 2731200 bytes 13656 pkt (dropped 40889, overlimits 0 requeues 0)
rate 0bit 0pps backlog 200b 0p requeues 0
class qfq 11:2 root weight 200 maxpkt 1200
Sent 10899800 bytes 54499 pkt (dropped 47, overlimits 0 requeues 0)
rate 24bit 0pps backlog 0b 0p requeues 0
class qfq 11:3 root weight 300 maxpkt 1300
Sent 12714400 bytes 63572 pkt (dropped 65, overlimits 0 requeues 0)
rate 32bit 0pps backlog 0b 0p requeues 0
class qfq 11:4 root weight 400 maxpkt 1400
Sent 400 bytes 2 pkt (dropped 36362, overlimits 0 requeues 0)
rate 0bit 0pps backlog 200b 0p requeues 0
class qfq 11:5 root weight 500 maxpkt 1500
Sent 400 bytes 2 pkt (dropped 45452, overlimits 0 requeues 0)
rate 0bit 0pps backlog 200b 0p requeues 0
class qfq 11:6 root weight 600 maxpkt 1600
Sent 800 bytes 4 pkt (dropped 27269, overlimits 0 requeues 0)
rate 0bit 0pps backlog 200b 0p requeues 0
class qfq 11:7 root weight 700 maxpkt 1700
Sent 600 bytes 3 pkt (dropped 45452, overlimits 0 requeues 0)
rate 0bit 0pps backlog 200b 0p requeues 0
class qfq 11:8 root weight 800 maxpkt 1800
Sent 1000 bytes 5 pkt (dropped 72722, overlimits 0 requeues 0)
rate 0bit 0pps backlog 200b 0p requeues 0
class qfq 11:9 root weight 900 maxpkt 1900
Sent 1200 bytes 6 pkt (dropped 63631, overlimits 0 requeues 0)
rate 0bit 0pps backlog 200b 0p requeues 0
class qfq 11:a root weight 1000 maxpkt 2000
Sent 14535200 bytes 72676 pkt (dropped 51, overlimits 0 requeues 0)
rate 32bit 0pps backlog 0b 0p requeues 0
class qfq 11:b root weight 1100 maxpkt 2048
Sent 14531200 bytes 72656 pkt (dropped 72, overlimits 0 requeues 0)
rate 32bit 0pps backlog 0b 0p requeues 0
class qfq 11:c root weight 1200 maxpkt 2048
Sent 10905800 bytes 54529 pkt (dropped 16, overlimits 0 requeues 0)
rate 24bit 0pps backlog 0b 0p requeues 0
class qfq 11:d root weight 1300 maxpkt 2048
Sent 14538200 bytes 72691 pkt (dropped 36, overlimits 0 requeues 0)
rate 32bit 0pps backlog 0b 0p requeues 0
class qfq 11:e root weight 1400 maxpkt 2048
Sent 18162200 bytes 90811 pkt (dropped 96, overlimits 0 requeues 0)
rate 40bit 0pps backlog 0b 0p requeues 0
class qfq 11:f root weight 1500 maxpkt 2048
Sent 10895000 bytes 54475 pkt (dropped 71, overlimits 0 requeues 0)
rate 24bit 0pps backlog 0b 0p requeues 0