[PATCH 0/7] Ipv6 TCP timewait recycling support
From: David Miller <davem@davemloft.net>
Date: 2010-12-02 20:41:32
From: David Miller <davem@davemloft.net>
Date: 2010-12-02 20:41:32
First we start with two simple cleanups, un-typedef'ification and a comment fixup. Then we add the infrastructure to allow the tcp_minisocks.c timewait recycling code able to be generic and use various ->ops Sadly, the ipv6 timewait ops are used even for v4-mapped addresses so we need a special check in the ipv6 timewait getpeer implementation. This is similar to the situation we have in tcp_v6_hash(). Doing these changes also pointed out that our listening socket incoming connection policy in the non-syncookies case as being handled differently for ipv4 vs. ipv6. This has been rectified. The issue is that for ipv4 we were reserving the final 1/4 of the backlog queue to validated destinations. In the final patch we throw the switch and implement the two getpeer operations for ipv6, which fully enables timewait recyling for ipv6.