On 6 February 2015 at 14:53, Eric Dumazet <eric.dumazet@xxxxxxxxx> wrote: > On Fri, 2015-02-06 at 05:40 -0800, Eric Dumazet wrote: > >> tcp_wfree() could maintain in tp->tx_completion_delay_ms an EWMA >> of TX completion delay. But this would require yet another expensive >> call to ktime_get() if HZ < 1000. >> >> Then tcp_write_xmit() could use it to adjust : >> >> limit = max(2 * skb->truesize, sk->sk_pacing_rate >> 9); >> >> to >> >> amount = (2 + tp->tx_completion_delay_ms) * sk->sk_pacing_rate >> >> limit = max(2 * skb->truesize, amount / 1000); >> >> I'll cook a patch. > > Hmm... doing this in all protocols would be too expensive, > and we do not want to include time spent in qdiscs. > > wifi could eventually do that, providing in skb->tx_completion_delay_us > the time spent in wifi driver. > > This way, we would have no penalty for network devices doing normal skb > orphaning (loopback interface, ethernet, ...) I'll play around with this idea and report back later. Michał -- To unsubscribe from this list: send the line "unsubscribe linux-wireless" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html