[Cake] Hopefully fixed ACK filter for v6

Toke Høiland-Jørgensen toke at toke.dk
Sun Apr 29 06:45:26 EDT 2018



On 29 April 2018 03:01:55 CEST, Ryan Mounce <ryan at mounce.com.au> wrote:
>On 29 April 2018 at 07:19, Toke Høiland-Jørgensen <toke at toke.dk> wrote:
>> Think I finally managed to fix the ACK filter so it works for both
>6in4
>> and regular v6 (the latter seems to have been broken since the commit
>> "e6b72c2 ack_filter: make less aggressive by default" which
>accidentally
>> reversed the address compare logic). It should also be safe against
>> weirdly fragmented packets (ha! famous last words!).
>>
>> If someone wants to either eyeball the code and/or test the ACK
>filter
>> please do. I'm planning to resubmit the patch to netdev sometime
>> tomorrow evening :)
>
>Eyeballing now, only a couple of comments.
>
>- Initialisation of iph and ipv6h can be moved before the while()
>loop. The compiler probably does this anyway.

Yeah, figured I'd let the compiler deal with that...

>- Whether it is worth the complexity of restoring the
>skb->encapsulation check within cake_get_tcphdr to handle other cases
>of encapsulated v4/v6 traffic. I may find some time to test this later
>today.

The reason I removed the check for skb->encapsulation was that in my tests it wasn't actually set for 6in4 traffic.

And looking at the code that touches it, that field seems to mostly be related to offloads? Or did you actually see any effect of using it when you added it initially? :P

>Everything else looks good to me, much cleaner.

Awesome, thanks for taking a look!

>Thank you so much for your efforts so far in getting cake upstream,
>and in particular to rescue ACK filtering. We may have to send you a
>real cake!

Haha, you're very welcome. Real cake will be appreciated, but don't feel any obligations ;)

-Toke


More information about the Cake mailing list