NPTL Trace Tool

TRACE EVENTS

Home

User Manual

Goals
Trace events
Inside
Example

Internals

Forum

Download

Sourceforge project info

Licence

 
  

A trace file gives a list of events related to the NPTL that occured during the execution of the program with some properties. There are two types of NPTL events:

  • calls to and exits from NPTL routines.
  • internal NPTL events, caused by modification of properties of NPTL objects.

Calls to and exits from NPTL routines

THREAD_CREATE_IN THREAD_CREATE_OUT enters and leaves pthread_create
THREAD_JOIN_IN THREAD_JOIN_OUT enters and leaves pthread_join
THREAD_CANCEL_IN THREAD_CANCEL_OUT enters and leaves pthread_cancel
MUTEX_INIT_IN MUTEX_INIT_OUT enters and leaves pthread_mutex_init
MUTEX_LOCK_IN MUTEX_LOCK_OUT enters and leaves pthread_mutex_lock
MUTEX_UNLOCK_IN MUTEX_UNLOCK_OUT enters and leaves pthread_mutex_unlock
MUTEX_DESTROY_IN MUTEX_DESTROY_OUT enters and leaves pthread_mutex_destroy
BARRIER_INIT_IN BARRIER_INIT_OUT enters and leaves pthread_barrier_init
BARRIER_WAIT_IN BARRIER_WAIT_OUT enters and leaves pthread_barrier_wait
BARRIER_DESTROY_IN BARRIER_DESTROY_OUT enters and leaves pthread_barrier_destroy
COND_INIT_IN COND_INIT_OUT enters and leaves pthread_cond_init
COND_WAIT_IN COND_WAIT_OUT enters and leaves pthread_cond_wait
COND_SIGNAL_IN COND_SIGNAL_OUT enters and leaves pthread_cond_signal
COND_BROADCAST_IN COND_BROADCAST_OUT enters and leaves pthread_cond_broadcast
COND_DESTROY_IN COND_DESTROY_OUT enters and leaves pthread_cond_destroy
SEM_INIT_IN SEM_INIT_OUT enters and leaves sem_init
SEM_OPEN_IN SEM_OPEN_OUT enters and leaves sem_open
SEM_UNLINK_IN SEM_UNLINK_OUT enters and leaves sem_unlink
SEM_POST_IN SEM_POST_OUT enters and leaves sem_post
SEM_WAIT_IN SEM_WAIT_OUT enters and leaves sem_wait
SEM_TRYWAIT_IN SEM_TRYWAIT_OUT enters and leaves sem_trywait
SEM_DESTROY_IN SEM_DESTROY_OUT enters and leaves sem_destroy

Internal NPTL events

For each event, properties displayed in the trace are given in the second column.

START_USER_FUNC starts user function
END_USER_FUNC leaves user function
PROG_FORK &pid is child of pid
THREAD_JOIN thread->joinid joins thread joinid that returned
THREAD_DETACH &pd makes thread pd unjoinable
THREAD_STATE_DEAD is dead
THREAD_STATE_WAIT is blocked
THREAD_STATE_WAKE is resumed
THREAD_STATE_WAIT_MUTEX is blocked on mutex
THREAD_STATE_WAKE_MUTEX is resumed
THREAD_STATE_WAIT_BARRIER is blocked on barrier
THREAD_STATE_WAKE_BARRIER is resumed
THREAD_STATE_WAIT_COND is blocked on cond-var
THREAD_STATE_WAKE_COND is resumed
THREAD_STATE_WAIT_SEM is blocked on semaphore
THREAD_STATE_WAKE_SEM is resumed
THREAD_INIT &pd creates thread pd
THREAD_SET_PD &pd sets new thread at address pd
THREAD_CANCEL_PROG &pd cancelling thread pd is in progress
MUTEX_STATE_FREE lock frees mutex
MUTEX_STATE_REQUIRE lock requires mutex
MUTEX_STATE_TAKEN lock locks mutex
MUTEX_COUNT_DEC count decrements mutex
MUTEX_COUNT_INC count increments mutex
MUTEX_OWNER_CHANGE count changes the owner of mutex
MUTEX_INIT owner, count, kind initializes mutex
MUTEX_DESTROY destroys mutex
BARRIER_LOCK_FREE lock frees barrier
BARRIER_LOCK_REQUIRE lock requires barrier
BARRIER_LOCK_TAKEN lock takes barrier
BARRIER_LEFT_DEC left decrements barrier
BARRIER_LEFT_INC left increments barrier
BARRIER_INIT left initializes barrier
BARRIER_DESTROY left destroys barrier
COND_LOCK_FREE lock frees cond-var
COND_LOCK_REQUIRE lock requires cond-var
COND_LOCK_TAKEN lock takes cond-var
COND_TOTAL_SEQ_SET total_seq blocks cond-var
COND_TOTAL_SEQ_INC total_seq uses the cond-var
COND_BROAD_SEQ_INC broad_seq wakes up everyone waiting for cond-var
COND_MUTEX_FREE mutex->lock frees mutex of cond-var
COND_MUTEX_REQUIRE mutex->lock requires mutex of cond-var
COND_MUTEX_TAKEN mutex->lock takes mutex of cond-var
COND_INIT total_seq, broad_seq initializes cond-var
COND_DESTROY destroys cond-var
SEM_COUNT_DEC count decrements semaphore
SEM_COUNT_INC count increments semaphore
SEM_INIT count initializes semaphore
SEM_DESTROY destroys semaphore
SEM_OPEN_CREATE mode, count will create a semaphore
SEM_MAPPINGSLOCK_FREE frees sem mapping
SEM_MAPPINGSLOCK_REQUIRE requires sem mapping
SEM_MAPPINGSLOCK_TAKEN takes sem mapping
SEM_REFCOUNT_DEC count decrements reference counter for semaphore
SEM_REFCOUNT_INC count increments reference counter for semaphore
 
 

Page hosted by :
SourceForge.net Logo