In function initialize_pthread in file pthread/pt-alloc.c, you need to initialize the value of have_kernel_resources to zero if the thread structure is not recycled. Following the logic of __pthread_create_internal: we go from __pthread_alloc to __pthread_thread_alloc without touching have_kernel_resources.
Then, __pthread_thread_alloc exits immediately if have_kernel_resources is non-zero: not good if we haven't actually allocated these resources. Sorry this isn't a patch, but it is only a one line fix, Thomas D