<div dir="ltr">> In theory, this ought to produce a histogram of sojourn times (in<br>> microseconds):<br>> bpftrace -e 'kretprobe:codel_skb_time_func { @sojourn = lhist((nsecs - (retval << 10))/1000, 0, 100000, 1000); }'<br><br>Thanks for the tips!<br><br>> Can't get the CoDel drop mechanism to trigger on my system at all,<br>> though (a laptop running on iwl). I guess because there's queue<br>> backpressure to userspace first?<br><br>What's the tcp_congestion_control in your system? Maybe it is BBR that prevents bufferbloat.<br><br>> It would be interesting to see if it works for you, assuming you can get<br>> bpftrace to work on your test system :)<br><br>I can enable required kernel configuration easily, but cross-compile bpftrace for an ARM64 platform may take some time and effort.</div><br><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Thu, Nov 21, 2019 at 2:05 AM Toke Høiland-Jørgensen <<a href="mailto:toke@redhat.com">toke@redhat.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">Kan Yan <<a href="mailto:kyan@google.com" target="_blank">kyan@google.com</a>> writes:<br>
<br>
>> It would be interesting to get some samples of the actual sojourn time<br>
>> as seen by CoDel in mac80211. Might be doable with bpftrace...<br>
><br>
> I will try to add some trace event to get the sojourn time for the<br>
> next round of tests.<br>
<br>
In theory, this ought to produce a histogram of sojourn times (in<br>
microseconds):<br>
<br>
bpftrace -e 'kretprobe:codel_skb_time_func { @sojourn = lhist((nsecs - (retval << 10))/1000, 0, 100000, 1000); }'<br>
<br>
<br>
Can't get the CoDel drop mechanism to trigger on my system at all,<br>
though (a laptop running on iwl). I guess because there's queue<br>
backpressure to userspace first?<br>
<br>
It would be interesting to see if it works for you, assuming you can get<br>
bpftrace to work on your test system :)<br>
<br>
-Toke<br>
<br>
</blockquote></div>