From mboxrd@z Thu Jan 1 00:00:00 1970 From: Christopher Faylor To: cygwin@cygwin.com Subject: Re: Threaded Cygwin Python Import Problem Date: Wed, 18 Jul 2001 17:09:00 -0000 Message-id: <20010718200853.A5083@redhat.com> References: <3B56201A.8137A41E@nc.rr.com> X-SW-Source: 2001-07/msg01087.html On Wed, Jul 18, 2001 at 07:47:38PM -0400, Greg Smith wrote: > >I think I've recreated Jason's threaded Python problem after fork(), >see the testcase below. And this is on my w2k sp2 dual pIII 850 >machine, where I have been unsuccessful in recreating Jason's >original Python testcase. > >I certainly do not claim Cygwin expertise, nor Windows API expertise, >and not as much *ix as I'd like (ask me about os/390, however, and >I'll give you a different story ;-). > >But, it looks like fork_copy() blindly copies everything from the >original process address space to the new address space, including >any pthread_mutex_t structures. And neither __pthread_mutex_lock >nor WaitForSingleObject() recognize that the mutex is not properly >initialized. If the comments in the testcase are removed (ie clear >the lock and initialize it), then the testcase runs as expected. If that is the case then a "fixup_after_fork" routine is probably required. You can see several of those in fork.cc. cgf -- Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple Bug reporting: http://cygwin.com/bugs.html Documentation: http://cygwin.com/docs.html FAQ: http://cygwin.com/faq/