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>