[issue12936] armv5tejl: random segfaults in getaddrinfo()

Charles-François Natali report at bugs.python.org
Sun Sep 11 17:07:05 CEST 2011


Charles-François Natali <neologix at free.fr> added the comment:

> Could faulthandler cause problems like these:

Well, that would explain why it crashes in the TLS lookup code, and why the core dump looks borked.

1) Apparently, Etch on ARM uses linuxthread instead of NPTL: what does
$ getconf GNU_LIBPTHREAD_VERSION
return on your box?

2) If it's using linxthreads, the culprit is likely the call to PyGILState_GetThisThreadState() from faulthandler_fatal_error(), which does a TLS lookup (which screws up because it's running in a user-allocated stack allocated with sigaltstack).
However, this should only happen when a a fatal signal is handled by faulthandler, which should - AFAICT - only happen in test_faulthandler.

Rebuilding faulthandler with
#undef HAVE_SIGALTSTACK

at the top of the file, should do the trick.

----------

_______________________________________
Python tracker <report at bugs.python.org>
<http://bugs.python.org/issue12936>
_______________________________________


More information about the Python-bugs-list mailing list