mirror of
https://github.com/opnsense/src.git
synced 2026-04-22 23:02:02 -04:00
If a thread who's name is being set is not the current thread, use macros
THR_THREAD_LOCK and THR_THREAD_UNLOCK instead, this should fix wrong lock level problem. Bug reported by: ed dot maste at gmail dot com
This commit is contained in:
parent
8c338614ac
commit
6839e793cf
1 changed files with 2 additions and 2 deletions
|
|
@ -52,12 +52,12 @@ _pthread_set_name_np(pthread_t thread, const char *name)
|
|||
ret = errno;
|
||||
} else {
|
||||
if (_thr_ref_add(curthread, thread, 0) == 0) {
|
||||
THR_LOCK(thread);
|
||||
THR_THREAD_LOCK(curthread, thread);
|
||||
if (thread->state != PS_DEAD) {
|
||||
if (thr_set_name(thread->tid, name))
|
||||
ret = errno;
|
||||
}
|
||||
THR_UNLOCK(thread);
|
||||
THR_THREAD_UNLOCK(curthread, thread);
|
||||
_thr_ref_delete(curthread, thread);
|
||||
} else {
|
||||
ret = ESRCH;
|
||||
|
|
|
|||
Loading…
Reference in a new issue