TCP Reassembly Issues

Lawrence Stewart lstewart at
Sun Nov 27 03:39:08 UTC 2011

On 11/26/11 16:23, Lawrence Stewart wrote:
> On 11/25/11 13:01, Lawrence Stewart wrote:
>> On 11/24/11 18:02, Kris Bauer wrote:
>>> Hello,
>>> I am currently experiencing an issue with FreeBSD 9.0-RC2 r227852
>>> where the
>>> net.inet.tcp.reass.curesegments value is constantly increasing (and not
>>> descreasing when there is nominal traffic with the box). It is causing
>>> tcp
>>> slowdowns as described with kern/155407:
>>> Exhausted net.inet.tcp.reass.maxsegments block recovering tcp session
>>> (for
>>> this socket and any other socket waiting for retransmited packets).
>>> After
>>> exhausted net.inet.tcp.reass.maxsegments allocation new entry in
>>> tcp_reass
>>> failed (for this socket and any other socket waiting for retransmited
>>> packets).
>>> I have increased the reass.maxsegments value to 16384 to temporarily
>>> avoid
>>> the problem, but the cursegments number keeps rising and it seems it
>>> will
>>> occur again.
>>> Is this an issue that anyone else has seen? I can provide more
>>> information
>>> if need be.
>> Thanks Kris, Raul and Stefan for the reports, I'll look into this.
> I think I've got it - a stupid 1 line logic bug. My apologies for
> missing it when I reviewed the patch which introduced the bug (patch was
> committed to head as r226113, MFCed to stable/9 as r226228).
> Due to some miscommunication, the initial patch was committed to and
> MFCed from head much later than it should have been in the 9.0 release
> cycle and instead of being included in the BETAs, didn't make it in
> until 9.0-RC1 I believe i.e. only RC1 and RC2 should be experiencing the
> issue.
> Could those who have reported the bug and are able to recompile their
> kernel to test a patch please try the following and report back to the
> list:
> The patch is against head r227986 but will apply and work correctly for
> 9.0 as well.

Thanks to all for the reports and testing. I committed the patch to head 
( and it will be MFCed to 9 
soon pending feedback from the release engineering team.


More information about the freebsd-stable mailing list