# $FreeBSD$ Testing pthread_mutex_init -------------------------- Protocol PTHREAD_PRIO_NONE, Type POSIX (type not specified) - PASS Protocol PTHREAD_PRIO_NONE, Type SS2 PTHREAD_MUTEX_DEFAULT - PASS Protocol PTHREAD_PRIO_NONE, Type SS2 PTHREAD_MUTEX_ERRORCHECK - PASS Protocol PTHREAD_PRIO_NONE, Type SS2 PTHREAD_MUTEX_NORMAL - PASS Protocol PTHREAD_PRIO_NONE, Type SS2 PTHREAD_MUTEX_RECURSIVE - PASS Protocol PTHREAD_PRIO_INHERIT, Type POSIX (type not specified) - PASS Protocol PTHREAD_PRIO_INHERIT, Type SS2 PTHREAD_MUTEX_DEFAULT - PASS Protocol PTHREAD_PRIO_INHERIT, Type SS2 PTHREAD_MUTEX_ERRORCHECK - PASS Protocol PTHREAD_PRIO_INHERIT, Type SS2 PTHREAD_MUTEX_NORMAL - PASS Protocol PTHREAD_PRIO_INHERIT, Type SS2 PTHREAD_MUTEX_RECURSIVE - PASS Protocol PTHREAD_PRIO_PROTECT, Type POSIX (type not specified) - PASS Protocol PTHREAD_PRIO_PROTECT, Type SS2 PTHREAD_MUTEX_DEFAULT - PASS Protocol PTHREAD_PRIO_PROTECT, Type SS2 PTHREAD_MUTEX_ERRORCHECK - PASS Protocol PTHREAD_PRIO_PROTECT, Type SS2 PTHREAD_MUTEX_NORMAL - PASS Protocol PTHREAD_PRIO_PROTECT, Type SS2 PTHREAD_MUTEX_RECURSIVE - PASS Testing pthread_mutex_destroy ----------------------------- Protocol PTHREAD_PRIO_NONE, Type POSIX (type not specified) Destruction of unused mutex - PASS Destruction of mutex locked by self - PASS Destruction of mutex locked by another thread - PASS Destruction of mutex while being used in cond_wait - PASS Protocol PTHREAD_PRIO_NONE, Type SS2 PTHREAD_MUTEX_DEFAULT Destruction of unused mutex - PASS Destruction of mutex locked by self - PASS Destruction of mutex locked by another thread - PASS Destruction of mutex while being used in cond_wait - PASS Protocol PTHREAD_PRIO_NONE, Type SS2 PTHREAD_MUTEX_ERRORCHECK Destruction of unused mutex - PASS Destruction of mutex locked by self - PASS Destruction of mutex locked by another thread - PASS Destruction of mutex while being used in cond_wait - PASS Protocol PTHREAD_PRIO_NONE, Type SS2 PTHREAD_MUTEX_NORMAL Destruction of unused mutex - PASS Destruction of mutex locked by self - PASS Destruction of mutex locked by another thread - PASS Destruction of mutex while being used in cond_wait - PASS Protocol PTHREAD_PRIO_NONE, Type SS2 PTHREAD_MUTEX_RECURSIVE Destruction of unused mutex - PASS Destruction of mutex locked by self - PASS Destruction of mutex locked by another thread - PASS Destruction of mutex while being used in cond_wait - PASS Protocol PTHREAD_PRIO_INHERIT, Type POSIX (type not specified) Destruction of unused mutex - PASS Destruction of mutex locked by self - PASS Destruction of mutex locked by another thread - PASS Destruction of mutex while being used in cond_wait - PASS Protocol PTHREAD_PRIO_INHERIT, Type SS2 PTHREAD_MUTEX_DEFAULT Destruction of unused mutex - PASS Destruction of mutex locked by self - PASS Destruction of mutex locked by another thread - PASS Destruction of mutex while being used in cond_wait - PASS Protocol PTHREAD_PRIO_INHERIT, Type SS2 PTHREAD_MUTEX_ERRORCHECK Destruction of unused mutex - PASS Destruction of mutex locked by self - PASS Destruction of mutex locked by another thread - PASS Destruction of mutex while being used in cond_wait - PASS Protocol PTHREAD_PRIO_INHERIT, Type SS2 PTHREAD_MUTEX_NORMAL Destruction of unused mutex - PASS Destruction of mutex locked by self - PASS Destruction of mutex locked by another thread - PASS Destruction of mutex while being used in cond_wait - PASS Protocol PTHREAD_PRIO_INHERIT, Type SS2 PTHREAD_MUTEX_RECURSIVE Destruction of unused mutex - PASS Destruction of mutex locked by self - PASS Destruction of mutex locked by another thread - PASS Destruction of mutex while being used in cond_wait - PASS Protocol PTHREAD_PRIO_PROTECT, Type POSIX (type not specified) Destruction of unused mutex - PASS Destruction of mutex locked by self - PASS Destruction of mutex locked by another thread - PASS Destruction of mutex while being used in cond_wait - PASS Protocol PTHREAD_PRIO_PROTECT, Type SS2 PTHREAD_MUTEX_DEFAULT Destruction of unused mutex - PASS Destruction of mutex locked by self - PASS Destruction of mutex locked by another thread - PASS Destruction of mutex while being used in cond_wait - PASS Protocol PTHREAD_PRIO_PROTECT, Type SS2 PTHREAD_MUTEX_ERRORCHECK Destruction of unused mutex - PASS Destruction of mutex locked by self - PASS Destruction of mutex locked by another thread - PASS Destruction of mutex while being used in cond_wait - PASS Protocol PTHREAD_PRIO_PROTECT, Type SS2 PTHREAD_MUTEX_NORMAL Destruction of unused mutex - PASS Destruction of mutex locked by self - PASS Destruction of mutex locked by another thread - PASS Destruction of mutex while being used in cond_wait - PASS Protocol PTHREAD_PRIO_PROTECT, Type SS2 PTHREAD_MUTEX_RECURSIVE Destruction of unused mutex - PASS Destruction of mutex locked by self - PASS Destruction of mutex locked by another thread - PASS Destruction of mutex while being used in cond_wait - PASS Testing pthread_mutex_lock -------------------------- Protocol PTHREAD_PRIO_NONE, Type POSIX (type not specified) Lock on unlocked mutex - PASS Lock on invalid mutex - PASS Lock on mutex held by self - PASS Protocol PTHREAD_PRIO_NONE, Type SS2 PTHREAD_MUTEX_DEFAULT Lock on unlocked mutex - PASS Lock on invalid mutex - PASS Lock on mutex held by self - PASS Protocol PTHREAD_PRIO_NONE, Type SS2 PTHREAD_MUTEX_ERRORCHECK Lock on unlocked mutex - PASS Lock on invalid mutex - PASS Lock on mutex held by self - PASS Protocol PTHREAD_PRIO_NONE, Type SS2 PTHREAD_MUTEX_NORMAL Lock on unlocked mutex - PASS Lock on invalid mutex - PASS Lock on mutex held by self - PASS Protocol PTHREAD_PRIO_NONE, Type SS2 PTHREAD_MUTEX_RECURSIVE Lock on unlocked mutex - PASS Lock on invalid mutex - PASS Lock on mutex held by self - PASS Protocol PTHREAD_PRIO_INHERIT, Type POSIX (type not specified) Lock on unlocked mutex - PASS Lock on invalid mutex - PASS Lock on mutex held by self - PASS Protocol PTHREAD_PRIO_INHERIT, Type SS2 PTHREAD_MUTEX_DEFAULT Lock on unlocked mutex - PASS Lock on invalid mutex - PASS Lock on mutex held by self - PASS Protocol PTHREAD_PRIO_INHERIT, Type SS2 PTHREAD_MUTEX_ERRORCHECK Lock on unlocked mutex - PASS Lock on invalid mutex - PASS Lock on mutex held by self - PASS Protocol PTHREAD_PRIO_INHERIT, Type SS2 PTHREAD_MUTEX_NORMAL Lock on unlocked mutex - PASS Lock on invalid mutex - PASS Lock on mutex held by self - PASS Protocol PTHREAD_PRIO_INHERIT, Type SS2 PTHREAD_MUTEX_RECURSIVE Lock on unlocked mutex - PASS Lock on invalid mutex - PASS Lock on mutex held by self - PASS Protocol PTHREAD_PRIO_PROTECT, Type POSIX (type not specified) Lock on unlocked mutex - PASS Lock on invalid mutex - PASS Lock on mutex held by self - PASS Protocol PTHREAD_PRIO_PROTECT, Type SS2 PTHREAD_MUTEX_DEFAULT Lock on unlocked mutex - PASS Lock on invalid mutex - PASS Lock on mutex held by self - PASS Protocol PTHREAD_PRIO_PROTECT, Type SS2 PTHREAD_MUTEX_ERRORCHECK Lock on unlocked mutex - PASS Lock on invalid mutex - PASS Lock on mutex held by self - PASS Protocol PTHREAD_PRIO_PROTECT, Type SS2 PTHREAD_MUTEX_NORMAL Lock on unlocked mutex - PASS Lock on invalid mutex - PASS Lock on mutex held by self - PASS Protocol PTHREAD_PRIO_PROTECT, Type SS2 PTHREAD_MUTEX_RECURSIVE Lock on unlocked mutex - PASS Lock on invalid mutex - PASS Lock on mutex held by self - PASS Testing pthread_mutex_unlock ---------------------------- Protocol PTHREAD_PRIO_NONE, Type POSIX (type not specified) Unlock on mutex held by self - PASS Unlock on invalid mutex - PASS Unlock on mutex locked by another thread - PASS Protocol PTHREAD_PRIO_NONE, Type SS2 PTHREAD_MUTEX_DEFAULT Unlock on mutex held by self - PASS Unlock on invalid mutex - PASS Unlock on mutex locked by another thread - PASS Protocol PTHREAD_PRIO_NONE, Type SS2 PTHREAD_MUTEX_ERRORCHECK Unlock on mutex held by self - PASS Unlock on invalid mutex - PASS Unlock on mutex locked by another thread - PASS Protocol PTHREAD_PRIO_NONE, Type SS2 PTHREAD_MUTEX_NORMAL Unlock on mutex held by self - PASS Unlock on invalid mutex - PASS Unlock on mutex locked by another thread - PASS Protocol PTHREAD_PRIO_NONE, Type SS2 PTHREAD_MUTEX_RECURSIVE Unlock on mutex held by self - PASS Unlock on invalid mutex - PASS Unlock on mutex locked by another thread - PASS Protocol PTHREAD_PRIO_INHERIT, Type POSIX (type not specified) Unlock on mutex held by self - PASS Unlock on invalid mutex - PASS Unlock on mutex locked by another thread - PASS Protocol PTHREAD_PRIO_INHERIT, Type SS2 PTHREAD_MUTEX_DEFAULT Unlock on mutex held by self - PASS Unlock on invalid mutex - PASS Unlock on mutex locked by another thread - PASS Protocol PTHREAD_PRIO_INHERIT, Type SS2 PTHREAD_MUTEX_ERRORCHECK Unlock on mutex held by self - PASS Unlock on invalid mutex - PASS Unlock on mutex locked by another thread - PASS Protocol PTHREAD_PRIO_INHERIT, Type SS2 PTHREAD_MUTEX_NORMAL Unlock on mutex held by self - PASS Unlock on invalid mutex - PASS Unlock on mutex locked by another thread - PASS Protocol PTHREAD_PRIO_INHERIT, Type SS2 PTHREAD_MUTEX_RECURSIVE Unlock on mutex held by self - PASS Unlock on invalid mutex - PASS Unlock on mutex locked by another thread - PASS Protocol PTHREAD_PRIO_PROTECT, Type POSIX (type not specified) Unlock on mutex held by self - PASS Unlock on invalid mutex - PASS Unlock on mutex locked by another thread - PASS Protocol PTHREAD_PRIO_PROTECT, Type SS2 PTHREAD_MUTEX_DEFAULT Unlock on mutex held by self - PASS Unlock on invalid mutex - PASS Unlock on mutex locked by another thread - PASS Protocol PTHREAD_PRIO_PROTECT, Type SS2 PTHREAD_MUTEX_ERRORCHECK Unlock on mutex held by self - PASS Unlock on invalid mutex - PASS Unlock on mutex locked by another thread - PASS Protocol PTHREAD_PRIO_PROTECT, Type SS2 PTHREAD_MUTEX_NORMAL Unlock on mutex held by self - PASS Unlock on invalid mutex - PASS Unlock on mutex locked by another thread - PASS Protocol PTHREAD_PRIO_PROTECT, Type SS2 PTHREAD_MUTEX_RECURSIVE Unlock on mutex held by self - PASS Unlock on invalid mutex - PASS Unlock on mutex locked by another thread - PASS Testing queueing order ---------------------- Queueing order on a mutex - PASS Queueing order on a condition variable - PASS Testing priority inheritence ---------------------------- Protype PTHREAD_PRIO_INHERIT, Type POSIX (type not specified) Simple inheritence test - PASS Inheritence test with change of priority - PASS Protype PTHREAD_PRIO_INHERIT, Type SS2 PTHREAD_MUTEX_DEFAULT Simple inheritence test - PASS Inheritence test with change of priority - PASS Protype PTHREAD_PRIO_INHERIT, Type SS2 PTHREAD_MUTEX_ERRORCHECK Simple inheritence test - PASS Inheritence test with change of priority - PASS Protype PTHREAD_PRIO_INHERIT, Type SS2 PTHREAD_MUTEX_NORMAL Simple inheritence test - PASS Inheritence test with change of priority - PASS Protype PTHREAD_PRIO_INHERIT, Type SS2 PTHREAD_MUTEX_RECURSIVE Simple inheritence test - PASS Inheritence test with change of priority - PASS Testing priority ceilings ------------------------- Protype PTHREAD_PRIO_PROTECT, Type POSIX (type not specified) Lock with ceiling priority < thread priority - PASS Lock with ceiling priority = thread priority - PASS Lock with ceiling priority > thread priority - PASS Preemption with ceiling priority < thread priority - PASS Preemption with ceiling priority = thread priority - PASS SCHED_FIFO scheduling and ceiling priority = thread priority - PASS SCHED_FIFO scheduling and ceiling priority > thread priority - PASS Protype PTHREAD_PRIO_PROTECT, Type SS2 PTHREAD_MUTEX_DEFAULT Lock with ceiling priority < thread priority - PASS Lock with ceiling priority = thread priority - PASS Lock with ceiling priority > thread priority - PASS Preemption with ceiling priority < thread priority - PASS Preemption with ceiling priority = thread priority - PASS SCHED_FIFO scheduling and ceiling priority = thread priority - PASS SCHED_FIFO scheduling and ceiling priority > thread priority - PASS Protype PTHREAD_PRIO_PROTECT, Type SS2 PTHREAD_MUTEX_ERRORCHECK Lock with ceiling priority < thread priority - PASS Lock with ceiling priority = thread priority - PASS Lock with ceiling priority > thread priority - PASS Preemption with ceiling priority < thread priority - PASS Preemption with ceiling priority = thread priority - PASS SCHED_FIFO scheduling and ceiling priority = thread priority - PASS SCHED_FIFO scheduling and ceiling priority > thread priority - PASS Protype PTHREAD_PRIO_PROTECT, Type SS2 PTHREAD_MUTEX_NORMAL Lock with ceiling priority < thread priority - PASS Lock with ceiling priority = thread priority - PASS Lock with ceiling priority > thread priority - PASS Preemption with ceiling priority < thread priority - PASS Preemption with ceiling priority = thread priority - PASS SCHED_FIFO scheduling and ceiling priority = thread priority - PASS SCHED_FIFO scheduling and ceiling priority > thread priority - PASS Protype PTHREAD_PRIO_PROTECT, Type SS2 PTHREAD_MUTEX_RECURSIVE Lock with ceiling priority < thread priority - PASS Lock with ceiling priority = thread priority - PASS Lock with ceiling priority > thread priority - PASS Preemption with ceiling priority < thread priority - PASS Preemption with ceiling priority = thread priority - PASS SCHED_FIFO scheduling and ceiling priority = thread priority - PASS SCHED_FIFO scheduling and ceiling priority > thread priority - PASS Total tests 212, passed 212, failed 0