svn commit: r193941 - head/sys/netinet
Bruce Evans
brde at optusnet.com.au
Thu Jun 11 04:04:38 UTC 2009
On Wed, 10 Jun 2009, John Baldwin wrote:
> On Wednesday 10 June 2009 2:27:15 pm John Baldwin wrote:
>> Author: jhb
>> Date: Wed Jun 10 18:27:15 2009
>> New Revision: 193941
>> URL: http://svn.freebsd.org/changeset/base/193941
>>
>> Log:
>> Change a few members of tcpcb that store cached copies of ticks to be ints
>> instead of unsigned longs. This fixes a few overflow edge cases on 64-bit
>> platforms. Specifically, if an idle connection receives a packet shortly
>> before 2^31 clock ticks of uptime (about 25 days with hz=1000) and the keep
>> alive timer fires after 2^31 clock ticks, the keep alive timer will think
>> that the connection has been idle for a very long time and will immediately
>> drop the connection instead of sending a keep alive probe.
>>
>> Reviewed by: silby, gnn, lstewart
>> MFC after: 1 week
>
> Note that the MFC patch for 7 is very different. I can't change the members
> to int in 7 since tcpcb is part of the ABI (for netstat, etc.). So, for 7 I
> added explicit casts in the math operations using t_rcvtime and ticks.
That has a better chance of working too.
Bruce
More information about the svn-src-head
mailing list