K 10 svn:author V 5 andre K 8 svn:date V 27 2012-03-01T16:40:12.590072Z K 7 svn:log V 859 Work around a bug in path MTU discovery where it never managages to update to the new and lower MTU when the tcp hostcache is full. When an ICMP fragmentation needed message comes in, it is dispatched through tcp_ctlinput() which determines the tcp connection it belongs to and then updates the tcp hostcache with the new MTU. After that tcp_mtudisc() is called, recalculates the MSS from tcp hostcache for this connection and resends some data. If the tcp hostcache is full, the update with the new MTU fails and the MSS recalculation doesn't take the MTU reduction into consideration which leads to a too large segment to be sent causing an ICMP message again... The workaround abuses the errno field in tcp_mtudisc() to communicate the new MTU directly and to have it included in the MSS recalculation in any case and independent of the tcp hostcache. END