Correctly lock/unlock signal lock. I must be in bad state, need to sleep.

This commit is contained in:
David Xu 2003-07-04 08:51:37 +00:00
parent dfde101719
commit a1a9b0071e
2 changed files with 4 additions and 2 deletions

View File

@ -116,7 +116,8 @@ lib_sigtimedwait(const sigset_t *set, siginfo_t *info,
siginfo = curthread->siginfo[i - 1];
KSE_SCHED_UNLOCK(curthread->kse,
curthread->kseg);
_kse_critical_leave(crit);
KSE_LOCK_ACQUIRE(curthread->kse,
&_thread_signal_lock);
ret = i;
goto OUT;
}

View File

@ -116,7 +116,8 @@ lib_sigtimedwait(const sigset_t *set, siginfo_t *info,
siginfo = curthread->siginfo[i - 1];
KSE_SCHED_UNLOCK(curthread->kse,
curthread->kseg);
_kse_critical_leave(crit);
KSE_LOCK_ACQUIRE(curthread->kse,
&_thread_signal_lock);
ret = i;
goto OUT;
}