AQL and the ath10k is *lovely*

repeating the tests in my prior post after this commit.

There seems to be an improvement; however, I still results like this below running simultaneous netperf from two clients on same 5 GHz band.

nmba [6] $ netperf -l 60 -D 1s -H XXX.XXX.45.26
MIGRATED TCP STREAM TEST from (null) (0.0.0.0) port 0 AF_INET to (null) () port 0 AF_INET : demo
Interim result:  178.96 10^6bits/s over 1.394 seconds ending at 1599148232.795
Interim result:  166.30 10^6bits/s over 1.078 seconds ending at 1599148233.874
Interim result:  192.22 10^6bits/s over 1.004 seconds ending at 1599148234.877
Interim result:  192.60 10^6bits/s over 1.024 seconds ending at 1599148235.901
Interim result:  198.60 10^6bits/s over 1.024 seconds ending at 1599148236.925
Interim result:  193.27 10^6bits/s over 1.031 seconds ending at 1599148237.956
Interim result:  200.07 10^6bits/s over 1.022 seconds ending at 1599148238.978
Interim result:  186.72 10^6bits/s over 1.067 seconds ending at 1599148240.045
Interim result:  183.12 10^6bits/s over 1.019 seconds ending at 1599148241.064
Interim result:  198.59 10^6bits/s over 1.008 seconds ending at 1599148242.073
Interim result:  201.03 10^6bits/s over 1.007 seconds ending at 1599148243.079
#
# netperf started on second client here
#
Interim result:   44.47 10^6bits/s over 4.504 seconds ending at 1599148247.583
Interim result:   35.79 10^6bits/s over 1.260 seconds ending at 1599148248.843
Interim result:   36.44 10^6bits/s over 1.007 seconds ending at 1599148249.850
Interim result:   40.88 10^6bits/s over 1.052 seconds ending at 1599148250.902
Interim result:   25.45 10^6bits/s over 1.607 seconds ending at 1599148252.509
Interim result:    7.18 10^6bits/s over 3.506 seconds ending at 1599148256.015
Interim result:   31.02 10^6bits/s over 1.115 seconds ending at 1599148257.130
Interim result:   30.40 10^6bits/s over 1.104 seconds ending at 1599148258.234
Interim result:   23.63 10^6bits/s over 1.287 seconds ending at 1599148259.520
Interim result:   35.42 10^6bits/s over 1.036 seconds ending at 1599148260.557
Interim result:   57.03 10^6bits/s over 1.011 seconds ending at 1599148261.568
Interim result:   40.07 10^6bits/s over 1.413 seconds ending at 1599148262.981
Interim result:   21.04 10^6bits/s over 1.894 seconds ending at 1599148264.874
Interim result:   23.64 10^6bits/s over 1.064 seconds ending at 1599148265.939
Interim result:   34.36 10^6bits/s over 1.007 seconds ending at 1599148266.946
Interim result:   21.80 10^6bits/s over 1.587 seconds ending at 1599148268.533
Interim result:   20.48 10^6bits/s over 1.075 seconds ending at 1599148269.608
Interim result:   53.36 10^6bits/s over 1.120 seconds ending at 1599148270.728
Interim result:   54.03 10^6bits/s over 1.339 seconds ending at 1599148272.067
Interim result:   39.15 10^6bits/s over 1.366 seconds ending at 1599148273.433
Interim result:    3.58 10^6bits/s over 11.134 seconds ending at 1599148284.567
Interim result:  126.80 10^6bits/s over 1.009 seconds ending at 1599148285.576
Interim result:  167.09 10^6bits/s over 1.010 seconds ending at 1599148286.586
Interim result:  179.32 10^6bits/s over 1.017 seconds ending at 1599148287.604
Interim result:   87.72 10^6bits/s over 2.032 seconds ending at 1599148289.636
Interim result:   92.16 10^6bits/s over 1.001 seconds ending at 1599148290.637
Interim result:  168.93 10^6bits/s over 0.770 seconds ending at 1599148291.407
Recv   Send    Send                          
Socket Socket  Message  Elapsed              
Size   Size    Size     Time     Throughput  
bytes  bytes   bytes    secs.    10^6bits/sec  

131072 131072 131072    60.04      68.58 

Irtt results run simultaneous with the two netperf sessions looks ok...

                          Min      Mean    Median      Max   Stddev
                          ---      ----    ------      ---   ------
                RTT    1.66ms   26.55ms   13.48ms  113.2ms  28.13ms
         send delay  -92.54ms  -72.97ms  -85.33ms  18.14ms  27.77ms
      receive delay   93.43ms   99.52ms    97.5ms  126.3ms   6.47ms
                                                                   
      IPDV (jitter)     139µs   22.24ms   11.43ms  107.3ms  27.16ms
          send IPDV    66.3µs    19.8ms    8.17ms  108.7ms   27.6ms
       receive IPDV     101µs    4.31ms    1.86ms  27.81ms   5.91ms
                                                                   
     send call time    26.3µs     114µs             1.18ms    188µs
        timer error    29.9µs    1.13ms             3.51ms    777µs
  server proc. time    7.33µs    10.1µs             25.7µs   2.32µs

                duration: 59.3s (wait 339.7ms)
   packets sent/received: 60/59 (1.67% loss)
 server packets received: 59/60 (1.67%/0.00% loss up/down)
     bytes sent/received: 3600/3540
       send/receive rate: 488 bps / 479 bps
           packet length: 60 bytes
             timer stats: 0/60 (0.00%) missed, 0.11% error

Multiple client netperf/irtt on 2.4 GHz band have similar features but less pronounced.

May this helped?

The unit of the return value of ieee80211_get_rate_duration is nanoseconds, not milliseconds.

Regardless, I appreciate the effort.