Message164182
| Author |
dmalcolm |
| Recipients |
benjamin.peterson, dmalcolm, georg.brandl, gregory.p.smith, loewis, pitrou, vstinner |
| Date |
2012年06月27日.18:12:41 |
| SpamBayes Score |
-1.0 |
| Marked as misclassified |
Yes |
| Message-id |
<1340820714.20337.34.camel@surprise> |
| In-reply-to |
<1340813082.35.0.597040947963.issue12605@psf.upfronthosting.co.za> |
| Content |
I believe this was due to this line:
return self._gdbframe.name().startswith('pthread_cond_timedwait')
within is_waiting_for_gil(), and your gdb returned None for
self._gdbframe.name() for your build.
I've changed it to:
name = self._gdbframe.name()
if name:
return name.startswith('pthread_cond_timedwait')
in my latest version.
I've also bulletproofed against the --without-threads case by simply
skipping the cases that fail (some tests run into this gdb error:
Cannot find new threads: generic error
unless we add LD_PRELOAD=PATH-TO-libpthread.so.1 as a workaround, but it
seems that trying to add that workaround is more risky (what path?) than
simply skipping the tests under those circumstances.
Tested successfully on a Fedora 15 x86_64 box (gdb-7.3-43.fc15.x86_64)
with these configurations:
* --with-pydebug
* --with-pydebug --enable-shared
* (no flags = optimized)
* --enable-shared (optimized)
* --with-pydebug --without-threads
(Note that because of issue #14774 I have to regenerate
_sysconfigdata.py between each configuration, otherwise it gets confused
about whether or not the build is optimized) |
|