delorie.com/archives/browse.cgi   search  
Mail Archives: cygwin/2009/11/13/06:24:31

X-Recipient: archive-cygwin AT delorie DOT com
X-Spam-Check-By: sourceware.org
Date: Fri, 13 Nov 2009 12:24:05 +0100
From: Corinna Vinschen <corinna-cygwin AT cygwin DOT com>
To: cygwin AT cygwin DOT com
Subject: Re: Problem with rsync 3.0.6-1 [and 3.0.5] under 1.7.0-62 and 63 [and 64]
Message-ID: <20091113112405.GO26238@calimero.vinschen.de>
Reply-To: cygwin AT cygwin DOT com
Mail-Followup-To: cygwin AT cygwin DOT com
References: <4AF58831 DOT 3080306 AT cs DOT umass DOT edu> <4AFC2A57 DOT 60909 AT cs DOT umass DOT edu> <20091112154701 DOT GA21323 AT calimero DOT vinschen DOT de> <4AFC3204 DOT 8080505 AT cs DOT umass DOT edu> <4AFC8AF3 DOT 2040009 AT cs DOT umass DOT edu>
MIME-Version: 1.0
In-Reply-To: <4AFC8AF3.2040009@cs.umass.edu>
User-Agent: Mutt/1.5.20 (2009-06-14)
Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm
List-Id: <cygwin.cygwin.com>
List-Unsubscribe: <mailto:cygwin-unsubscribe-archive-cygwin=delorie DOT com AT cygwin DOT com>
List-Subscribe: <mailto:cygwin-subscribe AT cygwin DOT com>
List-Archive: <http://sourceware.org/ml/cygwin/>
List-Post: <mailto:cygwin AT cygwin DOT com>
List-Help: <mailto:cygwin-help AT cygwin DOT com>, <http://sourceware.org/ml/#faqs>
Sender: cygwin-owner AT cygwin DOT com
Mail-Followup-To: cygwin AT cygwin DOT com
Delivered-To: mailing list cygwin AT cygwin DOT com

On Nov 12 17:23, Eliot Moss wrote:
> I went ahead and wrote a little program that narrows
> down the rsync problem to a dup2 call. The program:
> creates two pipes (for talking to a child process),
> forks the child, and the child tries to dup2 the
> pipe fds to its stdin and stdout. If it wins (which
> it doesn't), it will then run sleep for 5 seconds
> and quit. The parent closes some fds it doesn't need
> and waits for the child, then quits. I attach the
> program in question, and strace output.
> 
> Cheers -- Eliot Moss

Thanks for the testcase.  However, the problem is that I can't reproduce
any problem using your testcase.  I ran it on Windows XP SP3, Server 2008
SP1, and Windows 7.  The result is this, just with changing PIDs:

$ ./a_test
pid = 3272, fin = 5, fout = 4
wait got 0

I assume you see some error, but you didn't explicitely write what error
you see.  The strace output shows an error when closing a socket, which
is that dreaded Winsock error 10038, "socket operation on non-socket".

The reason why this operation fails must be something on your machine.
I'm just not sure how we can find out what that is, and how to avoid the
error then.  Simply ignoring error 10038 in close() doesn't sound like
a terribly good idea...


Corinna


-- 
Corinna Vinschen                  Please, send mails regarding Cygwin to
Cygwin Project Co-Leader          cygwin AT cygwin DOT com
Red Hat

--
Problem reports:       http://cygwin.com/problems.html
FAQ:                   http://cygwin.com/faq/
Documentation:         http://cygwin.com/docs.html
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019