delorie.com/archives/browse.cgi   search  
Mail Archives: cygwin/2009/11/20/13:50:47

X-Recipient: archive-cygwin AT delorie DOT com
X-Spam-Check-By: sourceware.org
Date: Fri, 20 Nov 2009 13:49:06 -0500
From: Christopher Faylor <cgf-use-the-mailinglist-please AT cygwin DOT com>
To: cygwin AT cygwin DOT com
Subject: Re: Use of Dual Core causes random failures building OpenJDK
Message-ID: <20091120184906.GA27241@ednor.casa.cgf.cx>
Reply-To: cygwin AT cygwin DOT com
Mail-Followup-To: cygwin AT cygwin DOT com
References: <4B023172 DOT 5000102 AT a11ysoft DOT com> <4B0611DC DOT 3080002 AT a11ysoft DOT com> <4B061709 DOT 2040507 AT cygwin DOT com> <b0ddfae80911200304l4f23bca2ha548ee1030a7816b AT mail DOT gmail DOT com> <20091120112052 DOT GT29173 AT calimero DOT vinschen DOT de> <20091120143237 DOT GD18289 AT ednor DOT casa DOT cgf DOT cx> <20091120144958 DOT GW29173 AT calimero DOT vinschen DOT de> <b0ddfae80911201019m4832a7f9k684b502b52a05ce3 AT mail DOT gmail DOT com>
MIME-Version: 1.0
In-Reply-To: <b0ddfae80911201019m4832a7f9k684b502b52a05ce3@mail.gmail.com>
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 Fri, Nov 20, 2009 at 01:19:57PM -0500, mike marchywka wrote:
>On 11/20/09, Corinna Vinschen  wrote:
>> On Nov 20 09:32, Christopher Faylor wrote:
>>> On Fri, Nov 20, 2009 at 12:20:52PM +0100, Corinna Vinschen wrote:
>>> >On Nov 20 06:04, mike marchywka wrote:
>>> >> On 11/19/09, Larry Hall (Cygwin) <reply-to-list-only-lh AT cygwin DOT com>
>>> >> wrote:
>>> >>>Wow! I had a hunch that BLODA could be the cause of the file related
>>> >>>problems but it never occurred to me that it could be screwing up
>>> >>>environment variables too.
>>> >>
>>> >>Anyone care to determine if env updates are not thread safe?
>>> >
>>> >It's indeed not thread safe.  Looks like we need some locking...
>>>
>>> What's "it" in this case?  putenv?
>>
>> "it" is primarily _addenv, which is used by setenv and putenv.
>>
>>>   The putenv() function is not required to be reentrant, and the one in
>>>   libc4, libc5 and glibc 2.0 is not, but the glibc 2.1 version is
>>
>> Same for setenv and unsetenv, which don't need to be thread-safe per
>> POSIX.  glibc's setenv is thread-safe, though.
>>
>>> I agree that it would be nice to make it safer but is there really code
>>> here which is updating the environment in separate threads?
>>
>> And given POSIX, if so, it would be an application bug if the application
>> doesn't care by itself to use setenv/getenv in a thread-safe manner.
>
>Why does the OS let this happen?  I thought windoze should avoid
>garbage.

Er, I think you're a little confused about what we're talking about.  The
OS doesn't enforce thread safety.  There's really no way that it can.

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

- Raw text -


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