VIMAGE UDP memory leak fix

Robert N. M. Watson rwatson at FreeBSD.org
Fri Nov 21 15:32:58 UTC 2014


On 21 Nov 2014, at 15:20, Marko Zec <zec at fer.hr> wrote:

>> Bjoern and I chatted for the last twenty or so minutes about the
>> code, and believe that as things stand, it is *not* safe to turn off
>> UMA_ZONE_NOFREE for TCP due to a teardown race in TCP that has been
>> known about and discussed for several years, but is some work to
>> resolve and that we've not yet found time to do so. The XXXRW's in
>> tcp_timer.c are related to this. We're pondering ways to fix it but
>> think this is not something that can be rushed.
> 
> OK fair enough - thanks a lot for looking into this!
> 
> Skimming through a bunch of hosts with moderately loaded hosts with
> reasonably high uptime I couldn't find one where net.inet.tcp.timer_race
> was not zero. A ny suggestions how to best reproduce the race(s) in
> tcp_timer.c?

They would likely occur only on very highly loaded hosts, as they require race conditions to arise between TCP timers and TCP close. I think I did manage to reproduce it at one stage, and left the counter in to see if we could spot it in production, and I have had (multiple) reports of it in deployed systems. I'm not sure it's worth trying to reproduce them, given that knowledge -- we should simply fix them.

Robert


More information about the freebsd-net mailing list