HAST instability

Mikolaj Golub trociny at freebsd.org
Tue Jun 14 14:56:49 UTC 2011

On Tue, 14 Jun 2011 16:39:11 +0300 Daniel Kalchev wrote:

 DK> On 10.06.11 20:07, Mikolaj Golub wrote:
 >> On Fri, 10 Jun 2011 20:05:43 +0300 Mikolaj Golub wrote to Daniel Kalchev:
 >>   MG>  Could you please try this patch?
 >>   MG>  http://people.freebsd.org/~trociny/hastd.no_shutdown.patch
 >> Sure you still have to have your kernel patched with uipc_socket.c.patch :-)

 DK> It is now running for about a day with both patches applied, without
 DK> disconnects.

 DK> Also, now TCP/IP connections always stay in ESTABLISHED state. As I
 DK> believe they should. Primary to secondary drain quickly on switching
 DK> form init to primary etc. No troubles without checksums as
 DK> well. Kernel is as of


It has turned out that automatic receive buffer sizing works only for
connections in ESTABLISHED state. And with small receive buffer the connection
might stuck sending data only via TCP window probes -- one byte every few
seconds (see "Scenario to make recv(MSG_WAITALL) stuck" in net@ for details).

hastd.no_shutdown.patch disables closing of unused directions so the
connections remain in ESTABLISHED state and automatic receive buffer sizing
works again.

uipc_socket.c.patch has been committed to CURRENT and I am going to MFC soon.

 DK> FreeBSD b1a 8.2-STABLE FreeBSD 8.2-STABLE #1: Mon Jun 13 11:32:38 EEST
 DK> 2011     root at b1a:/usr/obj/usr/src/sys/GENERIC  amd64

 DK> Daniel

Mikolaj Golub

More information about the freebsd-stable mailing list