X-Recipient: archive-cygwin AT delorie DOT com X-Spam-Check-By: sourceware.org Date: Fri, 20 Nov 2009 09:38:33 -0500 From: Christopher Faylor To: cygwin AT cygwin DOT com Subject: Re: 1.5.25-15: pthread_join deadlocks Message-ID: <20091120143833.GE18289@ednor.casa.cgf.cx> Reply-To: cygwin AT cygwin DOT com Mail-Followup-To: cygwin AT cygwin DOT com References: <20091119124405 DOT GF29173 AT calimero DOT vinschen DOT de> <4B067444 DOT 80900 AT ece DOT cmu DOT edu> <4B06A11C DOT 6030101 AT cwilson DOT fastmail DOT fm> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <4B06A11C.6030101@cwilson.fastmail.fm> User-Agent: Mutt/1.5.20 (2009-06-14) Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm Precedence: bulk List-Id: List-Unsubscribe: List-Subscribe: List-Archive: List-Post: List-Help: , 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 Fri, Nov 20, 2009 at 09:01:00AM -0500, Charles Wilson wrote: >Ryan Johnson wrote: >> Out of curiosity, how much did removing the racy optimization hurt >> performance? The patch just yanked it completely iirc. An alternative >> might be to have the main thread check for single-thread environment >> only at acquire time, and then release only if it acquired (the latter >> is probably a good idea regardles...). > >The problem is, IIRC there is no such thing as a single-thread >environment for cygwin programs: every cygwin program has a secondary >thread that handles translating certain windows events into unixy >signals, or something like that. I think. Yes, there's at least one extra thread active in every cygwin program. If you've used select() at any point there will be more. cgf -- 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