Message 115851 - Python tracker
Hm, both the test you mention are using the (non-recursive) lock to synchronize threads. I can't see anything wrong there. Could you please try to replace the cod in pthread_getspecific() with this: int err = errno void *result = pthread_getspecific(key); errno = err; return result; If this fixes those cases, then there is code somewhere that relies on errno being maintained across these calls.