From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 13905 invoked by alias); 26 Jan 2009 07:43:24 -0000 Received: (qmail 13894 invoked by uid 22791); 26 Jan 2009 07:43:23 -0000 X-Spam-Check-By: sourceware.org Received: from pool-71-126-240-83.bstnma.fios.verizon.net (HELO cgf.cx) (71.126.240.83) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Mon, 26 Jan 2009 07:43:18 +0000 Received: from ednor.cgf.cx (ednor.casa.cgf.cx [192.168.187.5]) by cgf.cx (Postfix) with ESMTP id 3326613C029 for ; Mon, 26 Jan 2009 02:43:08 -0500 (EST) Received: by ednor.cgf.cx (Postfix, from userid 201) id 26E9A2B385; Mon, 26 Jan 2009 02:43:08 -0500 (EST) Date: Mon, 26 Jan 2009 10:52:00 -0000 From: Christopher Faylor To: cygwin@cygwin.com Subject: Re: [1.7] regression wrt scp? Message-ID: <20090126074307.GA32214@ednor.casa.cgf.cx> Reply-To: cygwin@cygwin.com Mail-Followup-To: cygwin@cygwin.com References: <49644339.8000508@cwilson.fastmail.fm> <20090108103349.GB14304@calimero.vinschen.de> <20090108161513.GA10914@trixie.casa.cgf.cx> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20090108161513.GA10914@trixie.casa.cgf.cx> User-Agent: Mutt/1.5.16 (2007-06-09) Mailing-List: contact cygwin-help@cygwin.com; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: cygwin-owner@cygwin.com Mail-Followup-To: cygwin@cygwin.com X-SW-Source: 2009-01/txt/msg00750.txt.bz2 I finally managed to duplicate this. On Thu, Jan 08, 2009 at 11:15:13AM -0500, Christopher Faylor wrote: >On Thu, Jan 08, 2009 at 11:33:49AM +0100, Corinna Vinschen wrote: >>On Jan 7 00:52, Charles Wilson wrote: >>> With cygwin-1.7.36: >>> >>> $ scp gcc-tools-autoconf-2.59-10-src.tar.bz2 sources.redhat.com: >>> gcc-tools-autoconf-2.59-10-src.tar.bz2 100% 911KB 60.8KB/s 00:15 >>> >>> With cygwin-1.7.37: >>> >>> $ scp gcc-tools-autoconf-2.59-10-src.tar.bz2 sources.redhat.com: >>> gcc-tools-autoconf-2.59-10-src.tar.bz2 21% 192KB 91.8KB/s - stalled - >>> gcc-tools-autoconf-2.59-10-src.tar.bz2: Broken pipe >>> >>> and has to be killed with CTRL-C. ssh works fine in both cases. >>> >>> Is anybody else seeing this? >> >>I could reproduce it with Cygwin from CVS as well. It did not occur >>over a fast LAN connection, but it occurs reliably over my much slower >>ADSL connection when trying to upload to sourceware. The strace didn't >>exactly enlighten me yet. That's Chris' code and I'm not very familar >>with it. > >It's already on my list to investigate. When I saw "broken pipe" I >thought it could be something in the new pipe code. But, if it is, I can't see it yet. The strace snippet below seems to show that the ssh process which scp forks is expecting for the socket to become writable but that never happens. At time 10048910 you can see 16384 bytes received. Then select() is called to inspect the socket handler for readability/writability. But select claims that the socket handle is never ready. cgf 1047 10039981 [main] ssh 2308 readv: readv (4, 0x221CC0, 1) nonblocking, sigcatchers 6 386 10040367 [main] ssh 2308 peek_pipe: , ready for read: avail 81920 360 10040727 [main] ssh 2308 fhandler_base::ready_for_read: read_ready 1, avail 1 4233 10044960 [main] ssh 2308 fhandler_base::wait_overlapped: normal read, 16384 bytes 1029 10045989 [main] ssh 2308 __set_errno: int fhandler_base::wait_overlapped(bool, bool, DWORD*):1742 val 0 359 10046348 [main] ssh 2308 fhandler_base::read: returning 16384, binary mode 2562 10048910 [main] ssh 2308 readv: 16384 = readv (4, 0x221CC0, 1), errno 0 1071 10049981 [main] ssh 2308 cygwin_select: 7, 0x6E9030, 0x6E9040, 0x0, 0x0 713 10050694 [main] ssh 2308 dtable::select_read: fd 3 345 10051039 [main] ssh 2308 dtable::select_write: fd 3 433 10051472 [main] ssh 2308 cygwin_select: to NULL, ms FFFFFFFF 344 10051816 [main] ssh 2308 cygwin_select: sel.always_ready 0 1473 10053289 [main] ssh 2308 start_thread_socket: stuff_start 0x229C44 1115 10054404 [main] ssh 2308 select_stuff::wait: m 2, ms 4294967295 367 10054771 [select_socket] ssh 2308 thread_socket: stuff_start 0x229C44 390 10055161 [select_socket] ssh 2308 peek_socket: read_ready: 0, write_ready: 0, except_ready: 0 61530 10116691 [select_socket] ssh 2308 peek_socket: read_ready: 0, write_ready: 0, except_ready: 0 71665 10188356 [select_socket] ssh 2308 peek_socket: read_ready: 0, write_ready: 0, except_ready: 0 68540 10256896 [select_socket] ssh 2308 peek_socket: read_ready: 0, write_ready: 0, except_ready: 0 70495 10327391 [select_socket] ssh 2308 peek_socket: read_ready: 0, write_ready: 0, except_ready: 0 71157 10398548 [select_socket] ssh 2308 peek_socket: read_ready: 0, write_ready: 0, except_ready: 0 68720 10467268 [select_socket] ssh 2308 peek_socket: read_ready: 0, write_ready: 0, except_ready: 0 etc. -- Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple Problem reports: http://cygwin.com/problems.html Documentation: http://cygwin.com/docs.html FAQ: http://cygwin.com/faq/