freebsd-dev/lib/libthr/thread
Konstantin Belousov 321e2a0090 Do not leak THR_FLAGS_SUSPENDED from the previous suspend/resume
cycle.  The flag currently is cleared by the resumed thread.  If next
suspend request comes before the thread was able to clean the flag, in
which case suspender skip the thread.

Instead, clear the THR_FLAGS_SUSPEND flag in resume_common(), we do
not care how much code was executed in the resumed thread when the
pthread_resume_*np(s) functions returned.

PR:	209233
Reported by:	Lawrence Esswood <le277@cam.ac.uk>
MFC after:	1 week
2016-05-05 10:20:22 +00:00
..
Makefile.inc Implement process-shared locks support for libthr.so.3, without 2016-02-28 17:52:33 +00:00
thr_affinity.c Use __FBSDID() for .c files from lib/libthr/thread. 2016-04-08 11:15:26 +00:00
thr_attr.c Use __FBSDID() for .c files from lib/libthr/thread. 2016-04-08 11:15:26 +00:00
thr_autoinit.c Use __FBSDID() for .c files from lib/libthr/thread. 2016-04-08 11:15:26 +00:00
thr_barrier.c Use __FBSDID() for .c files from lib/libthr/thread. 2016-04-08 11:15:26 +00:00
thr_barrierattr.c Use __FBSDID() for .c files from lib/libthr/thread. 2016-04-08 11:15:26 +00:00
thr_cancel.c Use __FBSDID() for .c files from lib/libthr/thread. 2016-04-08 11:15:26 +00:00
thr_clean.c Use __FBSDID() for .c files from lib/libthr/thread. 2016-04-08 11:15:26 +00:00
thr_concurrency.c Use __FBSDID() for .c files from lib/libthr/thread. 2016-04-08 11:15:26 +00:00
thr_cond.c Use __FBSDID() for .c files from lib/libthr/thread. 2016-04-08 11:15:26 +00:00
thr_condattr.c Use __FBSDID() for .c files from lib/libthr/thread. 2016-04-08 11:15:26 +00:00
thr_create.c Use __FBSDID() for .c files from lib/libthr/thread. 2016-04-08 11:15:26 +00:00
thr_ctrdtr.c Merge all the copies of _tcb_ctor and _tcb_dtor. 2015-01-21 16:41:05 +00:00
thr_detach.c Use __FBSDID() for .c files from lib/libthr/thread. 2016-04-08 11:15:26 +00:00
thr_equal.c Use __FBSDID() for .c files from lib/libthr/thread. 2016-04-08 11:15:26 +00:00
thr_event.c Use __FBSDID() for .c files from lib/libthr/thread. 2016-04-08 11:15:26 +00:00
thr_exit.c Use __FBSDID() for .c files from lib/libthr/thread. 2016-04-08 11:15:26 +00:00
thr_fork.c Use __FBSDID() for .c files from lib/libthr/thread. 2016-04-08 11:15:26 +00:00
thr_getcpuclockid.c Use __FBSDID() for .c files from lib/libthr/thread. 2016-04-08 11:15:26 +00:00
thr_getprio.c Use __FBSDID() for .c files from lib/libthr/thread. 2016-04-08 11:15:26 +00:00
thr_getschedparam.c Use __FBSDID() for .c files from lib/libthr/thread. 2016-04-08 11:15:26 +00:00
thr_getthreadid_np.c Use __FBSDID() for .c files from lib/libthr/thread. 2016-04-08 11:15:26 +00:00
thr_info.c Use __FBSDID() for .c files from lib/libthr/thread. 2016-04-08 11:15:26 +00:00
thr_init.c Use __FBSDID() for .c files from lib/libthr/thread. 2016-04-08 11:15:26 +00:00
thr_join.c Use __FBSDID() for .c files from lib/libthr/thread. 2016-04-08 11:15:26 +00:00
thr_kern.c Use __FBSDID() for .c files from lib/libthr/thread. 2016-04-08 11:15:26 +00:00
thr_kill.c Use __FBSDID() for .c files from lib/libthr/thread. 2016-04-08 11:15:26 +00:00
thr_list.c Use __FBSDID() for .c files from lib/libthr/thread. 2016-04-08 11:15:26 +00:00
thr_main_np.c Use __FBSDID() for .c files from lib/libthr/thread. 2016-04-08 11:15:26 +00:00
thr_multi_np.c Use __FBSDID() for .c files from lib/libthr/thread. 2016-04-08 11:15:26 +00:00
thr_mutex.c If off-page lookup failed, there is no memory to perform 2016-04-12 10:25:44 +00:00
thr_mutexattr.c Use __FBSDID() for .c files from lib/libthr/thread. 2016-04-08 11:15:26 +00:00
thr_once.c Use __FBSDID() for .c files from lib/libthr/thread. 2016-04-08 11:15:26 +00:00
thr_printf.c Use __FBSDID() for .c files from lib/libthr/thread. 2016-04-08 11:15:26 +00:00
thr_private.h Remove unused variable. It was write-only before r297139. 2016-04-04 06:58:59 +00:00
thr_pshared.c Lock pshared_lock shared around fork, to ensure that the COW snapshot 2016-03-21 06:52:35 +00:00
thr_pspinlock.c Use __FBSDID() for .c files from lib/libthr/thread. 2016-04-08 11:15:26 +00:00
thr_resume_np.c Do not leak THR_FLAGS_SUSPENDED from the previous suspend/resume 2016-05-05 10:20:22 +00:00
thr_rtld.c Use __FBSDID() for .c files from lib/libthr/thread. 2016-04-08 11:15:26 +00:00
thr_rwlock.c Use __FBSDID() for .c files from lib/libthr/thread. 2016-04-08 11:15:26 +00:00
thr_rwlockattr.c Use __FBSDID() for .c files from lib/libthr/thread. 2016-04-08 11:15:26 +00:00
thr_self.c Use __FBSDID() for .c files from lib/libthr/thread. 2016-04-08 11:15:26 +00:00
thr_sem.c Use __FBSDID() for .c files from lib/libthr/thread. 2016-04-08 11:15:26 +00:00
thr_setprio.c Use __FBSDID() for .c files from lib/libthr/thread. 2016-04-08 11:15:26 +00:00
thr_setschedparam.c Use __FBSDID() for .c files from lib/libthr/thread. 2016-04-08 11:15:26 +00:00
thr_sig.c Do not leak THR_FLAGS_SUSPENDED from the previous suspend/resume 2016-05-05 10:20:22 +00:00
thr_single_np.c Use __FBSDID() for .c files from lib/libthr/thread. 2016-04-08 11:15:26 +00:00
thr_sleepq.c Use __FBSDID() for .c files from lib/libthr/thread. 2016-04-08 11:15:26 +00:00
thr_spec.c Use __FBSDID() for .c files from lib/libthr/thread. 2016-04-08 11:15:26 +00:00
thr_spinlock.c Use __FBSDID() for .c files from lib/libthr/thread. 2016-04-08 11:15:26 +00:00
thr_stack.c Use __FBSDID() for .c files from lib/libthr/thread. 2016-04-08 11:15:26 +00:00
thr_suspend_np.c Use __FBSDID() for .c files from lib/libthr/thread. 2016-04-08 11:15:26 +00:00
thr_switch_np.c Use __FBSDID() for .c files from lib/libthr/thread. 2016-04-08 11:15:26 +00:00
thr_symbols.c Use __FBSDID() for .c files from lib/libthr/thread. 2016-04-08 11:15:26 +00:00
thr_syscalls.c If libthr.so is dlopened without RTLD_GLOBAL flag, the libthr symbols 2016-02-08 19:24:13 +00:00
thr_umtx.c Use __FBSDID() for .c files from lib/libthr/thread. 2016-04-08 11:15:26 +00:00
thr_umtx.h libthr: Fix a parameter name in an internal header file. 2013-04-27 14:21:36 +00:00
thr_yield.c Use __FBSDID() for .c files from lib/libthr/thread. 2016-04-08 11:15:26 +00:00