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)
History
Date User Action Args
2012-06-27 18:12:43dmalcolmsetrecipients: + dmalcolm, loewis, georg.brandl, gregory.p.smith, pitrou, vstinner, benjamin.peterson
2012-06-27 18:12:42dmalcolmlinkissue12605 messages
2012-06-27 18:12:41dmalcolmcreate