This is the mail archive of the cygwin@cygwin.com mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Re: Python


----- Original Message -----
From: "Jason Tishler" <Jason.Tishler@dothill.com>
To: "Robert Collins" <robert.collins@itdomain.com.au>;
<cygwin@cygwin.com>
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


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]