On 3/13/2020 4:00 PM, Gregory Nutt wrote:
Sounds like it needs to call nxsig_wait_uninterruptible instead of nxsig_wait somewhere in sched/pthread/

s/nxsig_wait/nxsem_wait/g

The calling sequence is:

   libs/libc/phthread:pthread_mutex_lock() ->
   
sched/pthread:pthread_mutex_timed:pthread_mutex_timedlock()->pthread_mutex_take()->pthread_semaphore_take()->pthread_sem_take()

The nxsem_wait() is in pthread_sem_take().  But you can't change just that, however, other logic might depend on the interruptible nature.  It might requires propagating the interruptible characteristic.


Reply via email to