Mailing-List: contact cygwin-help AT sourceware DOT cygnus DOT com; run by ezmlm List-Subscribe: List-Archive: List-Post: List-Help: , Sender: cygwin-owner AT sources DOT redhat DOT com Delivered-To: mailing list cygwin AT sources DOT redhat DOT com Message-ID: <021101c0b6cf$4da8af80$0200a8c0@lifelesswks> From: "Robert Collins" To: "Jason Tishler" , References: <20010320174718 DOT B274 AT dothill DOT com> <20010327092703 DOT C797 AT dothill DOT com> Subject: Re: Python Date: Wed, 28 Mar 2001 01:05:02 +1000 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 X-OriginalArrivalTime: 27 Mar 2001 14:59:50.0499 (UTC) FILETIME=[9292DB30:01C0B6CE] ----- Original Message ----- From: "Jason Tishler" To: "Robert Collins" ; Sent: Wednesday, March 28, 2001 12:27 AM Subject: Re: Python > Rob, > > On Tue, Mar 20, 2001 at 05:47:18PM -0500, Jason Tishler wrote: > > On Tue, Mar 20, 2001 at 04:37:18PM +1100, Robert Collins wrote: > > > What errors do you get building python with threads ? I'm > > > working on the thread support and thought that python might be a nice > > > cross-check for my test-suites... > > > > Don't worry -- I've noticed... :,) > > > > I'll do a build, run the regression tests (if possible), and report back. > > I had the following issues when I configured Python to use your pthreads > support: > > 1. To compile I had to apply the attached patch to sys/signal.h. IIRC, > this is a known issue. Yes but. _POSIX_THREADS should not be defined. *** IMPORTANT: Can you see if you can find where it's getting defined? *** AFAICT It's only meant to be defined by the system headers to indicate system conformance. Side-issue: IIRC pthreads_kill() has already been fixed up on cygwin - you may have an older snapshot... more on this later > 2. The Python regression tests run much slower with pthreads enabled > than without. Also, the CPU seemed to be pegged at 100% more often > with pthreads than without. Hmm. Well thats something we can dig into. Pegging at 100% can mean more work is getting done :] or that there is a problem :[. I can't recall whether the first snapshot that went off had my threads overhaul (as opposed to some minor extensions) in it. The old thread code had critical sections and variables _everywhere_ when looking up threaded variables, non of which was needed - that has been fixed and committed. Does you snapshot have /dev/clipboard write support? (I did that after, so it's a good test :]) > 3. The Python regression tests consistently crash during test_popen2 > with the following error message: > > H:\src\Python-2.1b2a-threads\python.exe: *** couldn't release memory 0x1A02C000(5013504) for 'H:\src\Python-2.1b2a-threads\build\lib.cygwin_nt-4.0-1.3.0-i686-2.1\ima geop.dll' alignment, Win32 error 487 > > 358288600 [main] python 366 sync_with_child: child 269(0x248) died before initialization with status code 0x1 > 358288838 [main] python 366 sync_with_child: *** child state child loading dlls > 358291613 [sig] python 366 stackdump: Dumping stack trace to python.exe.stackdump > > I've attached the stackdump for your perusal. The 487 error is Attempt to access invalid address. I can't actually get much sense out of a stackdump on it's own. If you have the time could you fire up gdb with the python exe, and then use (from memory ) list 0xfunctioncolumnvalue for each line in the stackdump. Then that output combined with the stackdump will be useful. > Thanks, > Jason > Rob -- Want to unsubscribe from this list? Check out: http://cygwin.com/ml/#unsubscribe-simple