This is the mail archive of the
mailing list for the Cygwin project.
Re: [64bit] python3 vs. threads
- From: "Yaakov (Cygwin/X)" <yselkowitz at users dot sourceforge dot net>
- To: cygwin-apps at cygwin dot com
- Date: Tue, 30 Jul 2013 17:54:46 -0500
- Subject: Re: [64bit] python3 vs. threads
- References: <51AD6D64 dot 6040502 at users dot sourceforge dot net>
On 2013-06-03 23:30, Yaakov (Cygwin/X) wrote:
As part of the 64bit bootstrap process, I packaged python3, but had to
configure it --without-threads due to a runtime error.
I think I tracked down the source of the problem:
The PyThread TLS APIs, added in 3.2 via issue 9786 (namely,
PyThread_*_key and PyThread_*_key_value in Include/pythread.h and
Python/thread_pthread.h) assume sizeof(pthread_key_t) == sizeof(int).
However, on x86_64-cygwin, pthread_key_t is a pointer and so the native
calls fail when passed the incorrect values.
As for fixing it, we could s/int/long/g those APIs, but I'm not sure
what the ramifications of that might be. Can you think of a better