07992b08e8
The mutex is common across all the threads. It needn't be held across the init_routine() call as long as the 'once' behaviour is guaranteed Saw a deadlock case, where init_routine of one thread was waiting for the completion of init_routine in another thread. t2: wait for command t1: pthread_once: lock once_mux init_routine: inform thread t2 wait for signal from t2 t2: received command pthread_once lock once_mux (already held by t1) ---- Deadlock ---- |
||
---|---|---|
.. | ||
test | ||
component.mk | ||
Kconfig | ||
pthread.c | ||
pthread_internal.h | ||
pthread_local_storage.c |