netdev
[Top] [All Lists]

Re: Fragment ID wrap workaround (read-only, untested).

To: "Rusty Russell (IBM)" <rusty@xxxxxxxxxxx>
Subject: Re: Fragment ID wrap workaround (read-only, untested).
From: Andi Kleen <ak@xxxxxxx>
Date: Thu, 15 Jul 2004 19:34:09 +0200
Cc: netdev@xxxxxxxxxxx
In-reply-to: <1089873416.6583.1.camel@bach>
References: <1089873416.6583.1.camel@bach>
Sender: netdev-bounce@xxxxxxxxxxx
> +      * other end detect ID wrap. */
> +     if (skb->sk) {
> +             unsigned int slack;
> +             struct inet_opt *inet = inet_sk(skb->sk);
> +
> +             slack = (left % mtu);
> +             if (slack)
> +                     /* Shift by 8 bytes per id wrap. */
> +                     len = mtu - (slack % ((inet->id >> 16) << 3));

I'm pretty sure inet->id is wrong here. You would like the counter
in the inet peer entry. inet_sk(sk)->id is just used for the pseudo
counter in TCP that only works around VJ compression bugs. It's never used
for real fragmentation.

-Andi

<Prev in Thread] Current Thread [Next in Thread>