Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 04 Jun 2011 10:02:55 -0700
From:      Maxim Sobolev <sobomax@FreeBSD.org>
To:        "Bjoern A. Zeeb" <bzeeb-lists@lists.zabbadoz.net>
Cc:        svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org
Subject:   Re: svn commit: r222688 - head/sbin/hastd
Message-ID:  <4DEA653F.7070503@FreeBSD.org>
In-Reply-To: <BA66495E-AED3-459F-A5CD-69B91DB359BC@lists.zabbadoz.net>
References:  <201106041601.p54G1Ut7016697@svn.freebsd.org> <BA66495E-AED3-459F-A5CD-69B91DB359BC@lists.zabbadoz.net>

next in thread | previous in thread | raw e-mail | index | archive | help
On 6/4/2011 9:33 AM, Bjoern A. Zeeb wrote:
> I don't know about the hast internal protocol but the above reads kind of
> wrong to me.

Hmm, not sure what exactly is wrong? Sender does 3 writes to the TCP 
socket - 32k, 32k and 1071 bytes, while receiver does one 
recv(MSG_WAITALL) with the size of 66607. So I suspect sender's kernel 
does deliver two 32k packets and fills up receiver's buffer or 
something. And the remaining 1071 bytes stay somewhere in sender's 
kernel indefinitely, while recv() cannot complete in receiver's. Using 
the same size when doing recv() solves the issue for me.

-Maxim



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?4DEA653F.7070503>