[342] in linux-net channel archive
Re: TCP race condition/rdist weirdness
daemon@ATHENA.MIT.EDU (Thomas Koenig)
Fri May 19 10:26:59 1995
To: eichin@mit.edu
Date: Fri, 19 May 1995 14:48:18 +0200 (MET DST)
Cc: linux-net@vger.rutgers.edu
From: Thomas.Koenig@ciw.uni-karlsruhe.de (Thomas Koenig)
eichin@cygnus.com wrote:
> I recently fixed rdist to work under linux. The essence of the fix is
> to *always* check the return value from write, and if it didn't
> complete, loop until it does.
Ah, the old problem, which has also been a plague for GNU tar...
> Since the writes are always to a pipe, it may be that linux is not
> obeying POSIX in this regard, but it was better to make the code more
> robust.
AFAIK, POSIX specifies that a write may be interrupted, with write
returning the number of bytes actually written and setting errno
to EINTR, so I guess Linux is 'right' in this respect, and existing
practice isn't standard - conforming (or whatever ;)
> Someone was going to take the patches and fold them back into
> the main rdist release, but that hasn't happenned; if you'd like, I'll
> post them here...
Yes, I would very much appreciate that. Getting rdist to work is one
of the things really needed for an efficient setup of a network
of Linux machines.
Thank you very much!
--
Thomas Koenig, Thomas.Koenig@ciw.uni-karlsruhe.de, ig25@dkauni2.bitnet.
The joy of engineering is to find a straight line on a double
logarithmic diagram.