• Yang Yingliang's avatar
    fq: allow options of fair queue set to ~0U · aeb199d5
    Yang Yingliang authored
    Some options of fair queue cannot be (~0U). It leads to maxrate
    cannot be reset to unlimited because it cannot be (~0U). Allow
    the options being ~0U.
    
    Tested by the following command:
     # tc qdisc add dev eth4 root handle 1: fq limit 2000 flow_limit 200 maxrate 100mbit quantum 2000 initial_quantum 1600
     # tc -s -d qdisc show
    qdisc fq 1: dev eth4 root refcnt 2 limit 2000p flow_limit 200p buckets 1024 quantum 2000 initial_quantum 1600 maxrate 100Mbit
     Sent 1492 bytes 10 pkt (dropped 0, overlimits 0 requeues 0)
     backlog 0b 0p requeues 0
      1 flows (0 inactive, 0 throttled)
      0 gc, 0 highprio, 0 throttled
    
     # tc qdisc change dev eth4 root handle 1: fq limit 4294967295 flow_limit 4294967295 maxrate 34359738360 quantum 4294967295 initial_quantum 4294967295
     # tc -s -d qdisc show
    qdisc fq 1: dev eth4 root refcnt 2 limit 4294967295p flow_limit 4294967295p buckets 1024 quantum 4294967295 initial_quantum 4294967295
     Sent 38372 bytes 216 pkt (dropped 0, overlimits 0 requeues 0)
     backlog 0b 0p requeues 0
      2 flows (1 inactive, 0 throttled)
      0 gc, 2 highprio, 7 throttled
    Suggested-by: default avatarEric Dumazet <edumazet@google.com>
    Signed-off-by: default avatarYang Yingliang <yangyingliang@huawei.com>
    aeb199d5
q_fq.c 8.4 KB