On Thu, 2012-11-22 at 23:07 +0200, Stefan Stefanov wrote: > Can anyone explain me what is wrong with libpthread-stub.so? > > As I understand, sem_wait() works as intended according to the source code: > static int __sem_wait_stub(sem_t *_sem) > { > unsigned int *sem = (unsigned int *) _sem; > if (!*sem) { > /* Not available, simulate a blocking sem_wait */ > pause(); > errno = EINTR; > return -1; > } > *sem--; > return 0; > } > > If the semaphore is available, sem_wait decrements the semaphore value > and returns to the caller. > If the semaphore is unavailable, sem_wait suspends execution of the > calling thread by call of pause(). > > Obviously in our case semaphor is unavailable (null), thus it blocks. I don't know about the specific problem here, but the fact that you're using a pthread stub library instead of an actual implementation suggests that you're going to have a number of problems trying to get things to work. -- Arun