On Thu, 2012-05-10 at 11:19 +0200, Steinar H. Gunderson wrote:
> On Thu, May 10, 2012 at 02:16:31AM +0200, Eric Dumazet wrote:
> > Starting from kernel 2.6.13 Hybla has been included in the official
> > Linux kernel. However, this implementation, based on the "module" Linux
> > technology, does not include the last two Hybla components: Hoe's
> > channel bandwidth estimate and packet spacing. Their addition is
> > mandatory to fully benefit from Hybla performance improvement. To this
> > end, it is enough to patch the official kernel with the MultiTCP
> > package, downloadable from the downloads section.
> 
> That explains it, indeed. Their latest patch is for 3.0.0, which is maybe
> recent enough that I can try to coax it in next time I compile my kernel :-)
> 
> /* Steinar */

Unfortunately patchs seems in a bad shape...

random examples :

+void __tcp_pacing_reset_timer(struct sock *sk)
+{
+       struct tcp_sock *tp = tcp_sk(sk);
+       __u32 timeout = jiffies + tp->pacing.delta;
+
+       if (!mod_timer(&tp->pacing.timer, timeout))
+                       sock_hold(sk);
+}
+EXPORT_SYMBOL(__tcp_pacing_reset_timer);
+

timeout should be an "unsigned long"

-static void tcp_conservative_spur_to_response(struct tcp_sock *tp)
+static void tcp_conservative_spur_to_response(struct sock *sk)
 {
+       struct tcp_sock *tp = tcp_sk(sk);
        tp->snd_cwnd = min(tp->snd_cwnd, tp->snd_ssthresh);
        tp->snd_cwnd_cnt = 0;
        tp->bytes_acked = 0;
        TCP_ECN_queue_cwr(tp);
-       tcp_moderate_cwnd(tp);
+       tcp_moderate_cwnd(sk, tp);
 }
 

There is no point passing both sk and tp to a function, since tcp_sk(sk)
is a nop.



_______________________________________________
Bloat mailing list
[email protected]
https://lists.bufferbloat.net/listinfo/bloat

Reply via email to