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. -- John Baldwin _______________________________________________ svn-src-all@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/svn-src-all To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"