Enable signals

git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@1539 42af7a65-404d-4744-a932-0658087f49c3
This commit is contained in:
patacongo 2009-02-28 21:51:53 +00:00
parent b5d1f70c77
commit bd0d170002
2 changed files with 732 additions and 530 deletions

View File

@ -231,7 +231,7 @@ CONFIG_DEV_LOWCONSOLE=y
CONFIG_DISABLE_CLOCK=n
CONFIG_DISABLE_POSIX_TIMERS=n
CONFIG_DISABLE_PTHREAD=n
CONFIG_DISABLE_SIGNALS=y
CONFIG_DISABLE_SIGNALS=n
CONFIG_DISABLE_MQUEUE=n
CONFIG_DISABLE_MOUNTPOINT=n
CONFIG_DISABLE_ENVIRON=n

View File

@ -1,9 +1,11 @@
This is the output from the z16f target from January 31, 2008
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
This is the output from the ez80f910200zcog-d target from February 27, 2009
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
While all tests pass per this output, my impression is that some
of the timed delays in during execution of the test were not
correct and I suspect some system timing issues.
All features are enabled and all test pass *except* for the round-robin
test. However, it appears that some kept the interrupts disabled through-out
the conduct of that test (I can tell because of the interrupt driven LED
array on the board does not update when interrupts are disabled). So I
suspect that there is something else going on in that test case.
stdio_test: write fd=1
stdio_test: write fd=2
@ -18,6 +20,7 @@ show_variable: Variable=Variable1 has value=GoodValue1
show_variable: Variable=Variable2 has value=GoodValue2
show_variable: Variable=Variable3 has value=GoodValue3
user_start: Started user_main at PID=2
user_start: Exitting
stdio_test: Standard I/O Check: fprintf to stderr
user_main: Begin argument test
@ -27,56 +30,20 @@ user_main: argv[1]="Arg1"
user_main: argv[2]="Arg2"
user_main: argv[3]="Arg3"
user_main: argv[4]="Arg4"
End of test memory usage:
VARIABLE BEFORE AFTER
======== ======== ========
arena 7b550 7b550
ordblks 2 2
mxordblk 76b20 76b20
uordblks 33d0 33d0
fordblks 78180 78180
show_variable: Variable=Variable1 has value=GoodValue1
show_variable: Variable=Variable2 has value=GoodValue2
show_variable: Variable=Variable3 has value=GoodValue3
show_variable: Variable=Variable1 has no value
show_variable: Variable=Variable2 has value=GoodValue2
show_variable: Variable=Variable3 has value=GoodValue3
End of test memory usage:
VARIABLE BEFORE AFTER
======== ======== ========
arena 7b550 7b550
ordblks 2 3
mxordblk 76b20 76b20
uordblks 33d0 33c0
fordblks 78180 78190
show_variable: Variable=Variable1 has no value
show_variable: Variable=Variable2 has no value
show_variable: Variable=Variable3 has no value
End of test memory usage:
VARIABLE BEFORE AFTER
======== ======== ========
arena 7b550 7b550
ordblks 3 3
mxordblk 76b20 76b20
uordblks 33c0 3380
fordblks 78190 781d0
user_main: /dev/null test
dev_null: Read 0 bytes from /dev/null
dev_null: Wrote 1024 bytes to /dev/null
End of test memory usage:
VARIABLE BEFORE AFTER
======== ======== ========
arena 7b550 7b550
ordblks 3 3
mxordblk 76b20 76b20
uordblks 3380 3380
fordblks 781d0 781d0
user_main: mutex test
Initializing mutex
Starting thread 1
@ -85,15 +52,6 @@ Starting thread 2
Loops 32 32
Errors 0 0
End of test memory usage:
VARIABLE BEFORE AFTER
======== ======== ========
arena 7b550 7b550
ordblks 3 3
mxordblk 76b20 76b20
uordblks 3380 3380
fordblks 781d0 781d0
user_main: cancel test
cancel_test: Test 1: Normal Cancelation
cancel_test: Starting thread
@ -105,7 +63,7 @@ thread_waiter: Starting wait for condition
start_thread: Yielding
cancel_test: Canceling thread
cancel_test: Joining
cancel_test: waiter exited with result=ffffffff
cancel_test: waiter exited with result=ffffff
cancel_test: PASS thread terminated with PTHREAD_CANCELED
cancel_test: Test 2: Cancelation of detached thread
cancel_test: Re-starting thread
@ -137,17 +95,300 @@ cancel_test: Canceling thread
cancel_test: Joining
thread_waiter: Releasing mutex
thread_waiter: Setting cancelable
cancel_test: waiter exited with result=ffffffff
cancel_test: waiter exited with result=ffffff
cancel_test: PASS thread terminated with PTHREAD_CANCELED
user_main: semaphore test
sem_test: Initializing semaphore to 0
sem_test: Starting waiter thread 1
sem_test: Set thread 1 priority to 191
waiter_func: Thread 1 Started
waiter_func: Thread 1 initial semaphore value = 0
waiter_func: Thread 1 waiting on semaphore
sem_test: Starting waiter thread 2
sem_test: Set thread 2 priority to 128
waiter_func: Thread 2 Started
waiter_func: Thread 2 initial semaphore value = -1
waiter_func: Thread 2 waiting on semaphore
sem_test: Starting poster thread 3
sem_test: Set thread 3 priority to 64
poster_func: Thread 3 started
poster_func: Thread 3 semaphore value = -2
poster_func: Thread 3 posting semaphore
waiter_func: Thread 1 awakened
waiter_func: Thread 1 new semaphore value = -1
waiter_func: Thread 1 done
poster_func: Thread 3 new semaphore value = -1
poster_func: Thread 3 semaphore value = -1
poster_func: Thread 3 posting semaphore
waiter_func: Thread 2 awakened
waiter_func: Thread 2 new semaphore value = 0
waiter_func: Thread 2 done
poster_func: Thread 3 new semaphore value = 0
poster_func: Thread 3 done
user_main: condition variable test
cond_test: Initializing mutex
cond_test: Initializing cond
cond_test: Starting waiter
cond_test: Set thread 1 priority to 128
waiter_thread: Started
cond_test: Starting signaler
cond_test: Set thread 2 priority to 64
thread_signaler: Started
thread_signaler: Terminating
cond_test: signaler terminated, now cancel the waiter
cond_test: Waiter Signaler
cond_test: Loops 32 32
cond_test: Errors 0 0
cond_test:
cond_test: 0 times, waiter did not have to wait for data
cond_test: 0 times, data was already available when the signaler run
cond_test: 0 times, the waiter was in an unexpected state when the signaler ran
user_main: message queue test
mqueue_test: Starting receiver
mqueue_test: Set receiver priority to 128
receiver_thread: Starting
mqueue_test: Starting sender
mqueue_test: Set sender thread priority to 64
mqueue_test: Waiting for sender to complete
sender_thread: Starting
receiver_thread: mq_receive succeeded on msg 0
sender_thread: mq_send succeeded on msg 0
receiver_thread: mq_receive succeeded on msg 1
sender_thread: mq_send succeeded on msg 1
receiver_thread: mq_receive succeeded on msg 2
sender_thread: mq_send succeeded on msg 2
receiver_thread: mq_receive succeeded on msg 3
sender_thread: mq_send succeeded on msg 3
receiver_thread: mq_receive succeeded on msg 4
sender_thread: mq_send succeeded on msg 4
receiver_thread: mq_receive succeeded on msg 5
sender_thread: mq_send succeeded on msg 5
receiver_thread: mq_receive succeeded on msg 6
sender_thread: mq_send succeeded on msg 6
receiver_thread: mq_receive succeeded on msg 7
sender_thread: mq_send succeeded on msg 7
receiver_thread: mq_receive succeeded on msg 8
sender_thread: mq_send succeeded on msg 8
receiver_thread: mq_receive succeeded on msg 9
receiver_thread: returning nerrors=0
sender_thread: mq_send succeeded on msg 9
sender_thread: returning nerrors=0
mqueue_test: Canceling receiver
mqueue_test: receiver has already terminated
user_main: timed message queue test
timedmqueue_test: Starting sender
sender_thread: Starting
sender_thread: mq_timedsend succeeded on msg 0
sender_thread: mq_timedsend succeeded on msg 1
sender_thread: mq_timedsend succeeded on msg 2
sender_thread: mq_timedsend succeeded on msg 3
sender_thread: mq_timedsend succeeded on msg 4
sender_thread: mq_timedsend succeeded on msg 5
sender_thread: mq_timedsend succeeded on msg 6
sender_thread: mq_timedsend succeeded on msg 7
sender_thread: mq_timedsend succeeded on msg 8
timedmqueue_test: Waiting for sender to complete
sender_thread: mq_timedsend 9 timed out as expected
sender_thread: returning nerrors=0
timedmqueue_test: Starting receiver
receiver_thread: Starting
receiver_thread: mq_timedreceive succeeded on msg 0
receiver_thread: mq_timedreceive succeeded on msg 1
receiver_thread: mq_timedreceive succeeded on msg 2
receiver_thread: mq_timedreceive succeeded on msg 3
receiver_thread: mq_timedreceive succeeded on msg 4
receiver_thread: mq_timedreceive succeeded on msg 5
receiver_thread: mq_timedreceive succeeded on msg 6
receiver_thread: mq_timedreceive succeeded on msg 7
receiver_thread: mq_timedreceive succeeded on msg 8
timedmqueue_test: Waiting for receiver to complete
receiver_thread: Receive 9 timed out as expected
receiver_thread: returning nerrors=0
timedmqueue_test: Test complete
user_main: round-robin scheduler test
rr_test: Starting sieve1 thread
rr_test: Set thread priority to 1
rr_test: Set thread policty to SCHED_RR
rr_test: Starting sieve1 thread
sieve1 started
sieve1 finished
rr_test: Waiting for sieves to complete -- this should take awhile
rr_test: If RR scheduling is working, they should start and complete at
rr_test: about the same time
sieve2 started
sieve2 finished
rr_test: Done
user_main: barrier test
barrier_test: Initializing barrier
barrier_func: Thread 0 started
barrier_func: Thread 0 calling pthread_barrier_wait()
barrier_test: Thread 0 created
barrier_func: Thread 1 started
barrier_func: Thread 1 calling pthread_barrier_wait()
barrier_test: Thread 1 created
barrier_func: Thread 2 started
barrier_func: Thread 2 calling pthread_barrier_wait()
barrier_func: Thread 2, back with status=PTHREAD_BARRIER_SERIAL_THREAD (I AM SPECIAL)
barrier_func: Thread 2 done
barrier_test: Thread 2 created
barrier_func: Thread 0, back with status=0 (I am not special)
barrier_func: Thread 0 done
barrier_func: Thread 1, back with status=0 (I am not special)
barrier_func: Thread 1 done
barrier_test: Thread 0 completed with result=0
barrier_test: Thread 1 completed with result=0
barrier_test: Thread 2 completed with result=0
user_main: Exitting
stdio_test: write fd=1
stdio_test: write fd=2
stdio_test: Standard I/O Check: printf
user_start: putenv(Variable1=BadValue3)
user_start: setenv(Variable1, GoodValue1, TRUE)
user_start: setenv(Variable2, BadValue1, FALSE)
user_start: setenv(Variable2, GoodValue2, TRUE)
user_start: setenv(Variable3, Variable3, FALSE)
user_start: setenv(Variable3, Variable3, FALSE)
show_variable: Variable=Variable1 has value=GoodValue1
show_variable: Variable=Variable2 has value=GoodValue2
show_variable: Variable=Variable3 has value=GoodValue3
user_start: Started user_main at PID=2
user_start: Exitting
stdio_test: Standard I/O Check: fprintf to stderr
user_main: Begin argument test
user_main: Started with argc=5
user_main: argv[0]="<noname>"
user_main: argv[1]="Arg1"
user_main: argv[2]="Arg2"
user_main: argv[3]="Arg3"
user_main: argv[4]="Arg4"
End of test memory usage:
VARIABLE BEFORE AFTER
======== ======== ========
arena 7c200 7c200
ordblks 2 2
mxordblk 79e70 79e70
uordblks 19d0 19d0
fordblks 7a830 7a830
show_variable: Variable=Variable1 has value=GoodValue1
show_variable: Variable=Variable2 has value=GoodValue2
show_variable: Variable=Variable3 has value=GoodValue3
show_variable: Variable=Variable1 has no value
show_variable: Variable=Variable2 has value=GoodValue2
show_variable: Variable=Variable3 has value=GoodValue3
End of test memory usage:
VARIABLE BEFORE AFTER
======== ======== ========
arena 7c200 7c200
ordblks 2 3
mxordblk 79e70 79e70
uordblks 19d0 19c0
fordblks 7a830 7a840
show_variable: Variable=Variable1 has no value
show_variable: Variable=Variable2 has no value
show_variable: Variable=Variable3 has no value
End of test memory usage:
VARIABLE BEFORE AFTER
======== ======== ========
arena 7c200 7c200
ordblks 3 3
mxordblk 79e70 79e70
uordblks 19c0 1980
fordblks 7a840 7a880
user_main: /dev/null test
dev_null: Read 0 bytes from /dev/null
dev_null: Wrote 1024 bytes to /dev/null
End of test memory usage:
VARIABLE BEFORE AFTER
======== ======== ========
arena 7c200 7c200
ordblks 3 3
mxordblk 79e70 79e70
uordblks 1980 1980
fordblks 7a880 7a880
user_main: mutex test
Initializing mutex
Starting thread 1
Starting thread 2
Thread1 Thread2
Loops 32 32
Errors 0 0
End of test memory usage:
VARIABLE BEFORE AFTER
======== ======== ========
arena 7c200 7c200
ordblks 3 3
mxordblk 79e70 79e70
uordblks 1980 1980
fordblks 7a880 7a880
user_main: cancel test
cancel_test: Test 1: Normal Cancelation
cancel_test: Starting thread
start_thread: Initializing mutex
start_thread: Initializing cond
start_thread: Starting thread
thread_waiter: Taking mutex
thread_waiter: Starting wait for condition
start_thread: Yielding
cancel_test: Canceling thread
cancel_test: Joining
cancel_test: waiter exited with result=ffffff
cancel_test: PASS thread terminated with PTHREAD_CANCELED
cancel_test: Test 2: Cancelation of detached thread
cancel_test: Re-starting thread
restart_thread: Destroying cond
restart_thread: Destroying mutex
restart_thread: Re-starting thread
start_thread: Initializing mutex
start_thread: Initializing cond
start_thread: Starting thread
thread_waiter: Taking mutex
thread_waiter: Starting wait for condition
start_thread: Yielding
cancel_test: Canceling thread
cancel_test: Joining
cancel_test: PASS pthread_join failed with status=ESRCH
cancel_test: Test 3: Non-cancelable threads
cancel_test: Re-starting thread (non-cancelable)
restart_thread: Destroying cond
restart_thread: Destroying mutex
restart_thread: Re-starting thread
start_thread: Initializing mutex
start_thread: Initializing cond
start_thread: Starting thread
thread_waiter: Taking mutex
thread_waiter: Starting wait for condition
thread_waiter: Setting non-cancelable
start_thread: Yielding
cancel_test: Canceling thread
cancel_test: Joining
thread_waiter: Releasing mutex
thread_waiter: Setting cancelable
cancel_test: waiter exited with result=ffffff
cancel_test: PASS thread terminated with PTHREAD_CANCELED
End of test memory usage:
VARIABLE BEFORE AFTER
======== ======== ========
arena 7b550 7b550
arena 7c200 7c200
ordblks 3 3
mxordblk 76b20 76b20
uordblks 3380 3380
fordblks 781d0 781d0
mxordblk 79e70 79e70
uordblks 1980 1980
fordblks 7a880 7a880
user_main: semaphore test
sem_test: Initializing semaphore to 0
@ -181,11 +422,11 @@ poster_func: Thread 3 done
End of test memory usage:
VARIABLE BEFORE AFTER
======== ======== ========
arena 7b550 7b550
arena 7c200 7c200
ordblks 3 3
mxordblk 76b20 76b20
uordblks 3380 3380
fordblks 781d0 781d0
mxordblk 79e70 79e70
uordblks 1980 1980
fordblks 7a880 7a880
user_main: condition variable test
cond_test: Initializing mutex
@ -209,11 +450,11 @@ cond_test: 0 times, the waiter was in an unexpected state when the signaler ran
End of test memory usage:
VARIABLE BEFORE AFTER
======== ======== ========
arena 7b550 7b550
arena 7c200 7c200
ordblks 3 3
mxordblk 76b20 76b20
uordblks 3380 3380
fordblks 781d0 781d0
mxordblk 79e70 79e70
uordblks 1980 1980
fordblks 7a880 7a880
user_main: timed wait test
thread_waiter: Initializing mutex
@ -223,23 +464,22 @@ timedwait_test: Set thread 2 priority to 177
thread_waiter: Taking mutex
thread_waiter: Starting 5 second wait for condition
timedwait_test: Joining
tcb=0x8057d0 sigdeliver=0x13046
rtcb=0x8000c8 current_regs=0xffffbf7a
rtcb=8057d0 sigdeliver=13046 sigpendactionq.head=0
tcb=0xb845d0 sigdeliver=0xa899
rtcb=b845d0 sigdeliver=a899 sigpendactionq.head=0
Resuming
thread_waiter: pthread_cond_timedwait timed out
thread_waiter: Releasing mutex
thread_waiter: Exit with status 0x12345678
timedwait_test: waiter exited with result=12345678
timedwait_test: waiter exited with result=345678
End of test memory usage:
VARIABLE BEFORE AFTER
======== ======== ========
arena 7b550 7b550
arena 7c200 7c200
ordblks 3 3
mxordblk 76b20 76b20
uordblks 3380 3380
fordblks 781d0 781d0
mxordblk 79e70 79e70
uordblks 1980 1980
fordblks 7a880 7a880
user_main: message queue test
mqueue_test: Starting receiver
@ -269,11 +509,10 @@ receiver_thread: mq_receive succeeded on msg 8
sender_thread: mq_send succeeded on msg 8
receiver_thread: mq_receive succeeded on msg 9
sender_thread: mq_send succeeded on msg 9
sender_thread: returning ntcb=0x8057d0 sigdeliver=0x13046
rtcb=0x806e30 current_regs=0x0
rtcb=8057d0 sigdeliver=13046 sigpendactionq.head=0
sender_thread: returning nertcb=0xb845d0 sigdeliver=0xa899
rtcb=b845d0 sigdeliver=a899 sigpendactionq.head=0
Resuming
errors=0
rors=0
mqueue_test: Killing receiver
receiver_thread: mq_receive interrupted!
receiver_thread: returning nerrors=0
@ -283,18 +522,17 @@ mqueue_test: receiver has already terminated
End of test memory usage:
VARIABLE BEFORE AFTER
======== ======== ========
arena 7b550 7b550
arena 7c200 7c200
ordblks 3 3
mxordblk 76b20 76b20
uordblks 3380 3380
fordblks 781d0 781d0
mxordblk 79e70 79e70
uordblks 1980 1980
fordblks 7a880 7a880
user_main: timed message queue test
timedmqueue_test: Starting sender
sender_thread: Starting
sender_thread: mq_timedsend succeeded on msg 0
sender_thread: mq_timedsend succeeded on msg 1
timedmqueue_test: Waiting for sender to complete
sender_thread: mq_timedsend succeeded on msg 2
sender_thread: mq_timedsend succeeded on msg 3
sender_thread: mq_timedsend succeeded on msg 4
@ -302,6 +540,7 @@ sender_thread: mq_timedsend succeeded on msg 5
sender_thread: mq_timedsend succeeded on msg 6
sender_thread: mq_timedsend succeeded on msg 7
sender_thread: mq_timedsend succeeded on msg 8
timedmqueue_test: Waiting for sender to complete
sender_thread: mq_timedsend 9 timed out as expected
sender_thread: returning nerrors=0
timedmqueue_test: Starting receiver
@ -310,12 +549,12 @@ receiver_thread: mq_timedreceive succeeded on msg 0
receiver_thread: mq_timedreceive succeeded on msg 1
receiver_thread: mq_timedreceive succeeded on msg 2
receiver_thread: mq_timedreceive succeeded on msg 3
timedmqueue_test: Waiting for receiver to complete
receiver_thread: mq_timedreceive succeeded on msg 4
receiver_thread: mq_timedreceive succeeded on msg 5
receiver_thread: mq_timedreceive succeeded on msg 6
receiver_thread: mq_timedreceive succeeded on msg 7
receiver_thread: mq_timedreceive succeeded on msg 8
timedmqueue_test: Waiting for receiver to complete
receiver_thread: Receive 9 timed out as expected
receiver_thread: returning nerrors=0
timedmqueue_test: Test complete
@ -323,11 +562,11 @@ timedmqueue_test: Test complete
End of test memory usage:
VARIABLE BEFORE AFTER
======== ======== ========
arena 7b550 7b550
arena 7c200 7c200
ordblks 3 3
mxordblk 76b20 76b20
uordblks 3380 3380
fordblks 781d0 781d0
mxordblk 79e70 79e70
uordblks 1980 1980
fordblks 7a880 7a880
user_main: signal handler test
sighand_test: Initializing semaphore to 0
@ -338,10 +577,9 @@ waiter_main: Unmasking signal 17
waiter_main: Registering signal handler
waiter_main: oact.sigaction=0 oact.sa_flags=0 oact.sa_mask=0
waiter_main: Waiting on semaphore
tcb=0x8057d0 sigdeliver=0x13046
rtcb=0x806e30 current_regs=0x0
tcb=0xb845d0 sigdeliver=0xa899
sighand_test: Signaling pid=20 with signo=17 sigvalue=42
rtcb=8057d0 sigdeliver=13046 sigpendactionq.head=804b10
rtcb=b845d0 sigdeliver=a899 sigpendactionq.head=b83a70
Resuming
wakeup_action: Received signal 17
wakeup_action: sival_int=42
@ -354,11 +592,11 @@ sighand_test: done
End of test memory usage:
VARIABLE BEFORE AFTER
======== ======== ========
arena 7b550 7b550
ordblks 3 4
mxordblk 76b20 76b20
uordblks 3380 35c0
fordblks 781d0 77f90
arena 7c200 7c200
ordblks 3 3
mxordblk 79e70 79e70
uordblks 1980 1980
fordblks 7a880 7a880
user_main: POSIX timer test
timer_test: Initializing semaphore to 0
@ -368,9 +606,8 @@ timer_test: oact.sigaction=0 oact.sa_flags=0 oact.sa_mask=0
timer_test: Creating timer
timer_test: Starting timer
timer_test: Waiting on semaphore
tcb=0x806e30 sigdeliver=0x13046
rtcb=0x8000c8 current_regs=0xffffbf7a
rtcb=806e30 sigdeliver=13046 sigpendactionq.head=804b23
tcb=0xb84f90 sigdeliver=0xa899
rtcb=b84f90 sigdeliver=a899 sigpendactionq.head=b83a80
Resuming
timer_expiration: Received signal 17
timer_expiration: sival_int=42
@ -379,9 +616,8 @@ timer_expiration: ucontext=0
timer_test: sem_wait() successfully interrupted by signal
timer_test: g_nsigreceived=1
timer_test: Waiting on semaphore
tcb=0x806e30 sigdeliver=0x13046
rtcb=0x8000c8 current_regs=0xffffbf7a
rtcb=806e30 sigdeliver=13046 sigpendactionq.head=804b36
tcb=0xb84f90 sigdeliver=0xa899
rtcb=b84f90 sigdeliver=a899 sigpendactionq.head=b83a90
Resuming
timer_expiration: Received signal 17
timer_expiration: sival_int=42
@ -390,9 +626,8 @@ timer_expiration: ucontext=0
timer_test: sem_wait() successfully interrupted by signal
timer_test: g_nsigreceived=2
timer_test: Waiting on semaphore
tcb=0x806e30 sigdeliver=0x13046
rtcb=0x8000c8 current_regs=0xffffbf7a
rtcb=806e30 sigdeliver=13046 sigpendactionq.head=804b49
tcb=0xb84f90 sigdeliver=0xa899
rtcb=b84f90 sigdeliver=a899 sigpendactionq.head=b83aa0
Resuming
timer_expiration: Received signal 17
timer_expiration: sival_int=42
@ -401,9 +636,8 @@ timer_expiration: ucontext=0
timer_test: sem_wait() successfully interrupted by signal
timer_test: g_nsigreceived=3
timer_test: Waiting on semaphore
tcb=0x806e30 sigdeliver=0x13046
rtcb=0x8000c8 current_regs=0xffffbf76
rtcb=806e30 sigdeliver=13046 sigpendactionq.head=804b5c
tcb=0xb84f90 sigdeliver=0xa899
rtcb=b84f90 sigdeliver=a899 sigpendactionq.head=b83ab0
Resuming
timer_expiration: Received signal 17
timer_expiration: sival_int=42
@ -412,9 +646,8 @@ timer_expiration: ucontext=0
timer_test: sem_wait() successfully interrupted by signal
timer_test: g_nsigreceived=4
timer_test: Waiting on semaphore
tcb=0x806e30 sigdeliver=0x13046
rtcb=0x8000c8 current_regs=0xffffbf66
rtcb=806e30 sigdeliver=13046 sigpendactionq.head=804b6f
tcb=0xb84f90 sigdeliver=0xa899
rtcb=b84f90 sigdeliver=a899 sigpendactionq.head=b83ac0
Resuming
timer_expiration: Received signal 17
timer_expiration: sival_int=42
@ -428,11 +661,11 @@ timer_test: done
End of test memory usage:
VARIABLE BEFORE AFTER
======== ======== ========
arena 7b550 7b550
ordblks 4 4
mxordblk 76b20 76b20
uordblks 35c0 35c0
fordblks 77f90 77f90
arena 7c200 7c200
ordblks 3 3
mxordblk 79e70 79e70
uordblks 1980 1980
fordblks 7a880 7a880
user_main: round-robin scheduler test
rr_test: Starting sieve1 thread
@ -440,22 +673,22 @@ rr_test: Set thread priority to 1
rr_test: Set thread policty to SCHED_RR
rr_test: Starting sieve1 thread
sieve1 started
sieve1 finished
rr_test: Waiting for sieves to complete -- this should take awhile
rr_test: If RR scheduling is working, they should start and complete at
rr_test: about the same time
sieve2 started
sieve1 finished
sieve2 finished
rr_test: Done
End of test memory usage:
VARIABLE BEFORE AFTER
======== ======== ========
arena 7b550 7b550
ordblks 4 4
mxordblk 76b20 76b20
uordblks 35c0 35c0
fordblks 77f90 77f90
arena 7c200 7c200
ordblks 3 3
mxordblk 79e70 79e70
uordblks 1980 1980
fordblks 7a880 7a880
user_main: barrier test
barrier_test: Initializing barrier
@ -465,65 +698,34 @@ barrier_func: Thread 1 started
barrier_test: Thread 1 created
barrier_func: Thread 2 started
barrier_test: Thread 2 created
barrier_func: Thread 3 started
barrier_test: Thread 3 created
barrier_func: Thread 0 calling pthread_barrier_wait()
barrier_func: Thread 1 calling pthread_barrier_wait()
barrier_func: Thread 2 calling pthread_barrier_wait()
barrier_func: Thread 4 started
barrier_test: Thread 4 created
barrier_func: Thread 3 calling pthread_barrier_wait()
barrier_func: Thread 4 calling pthread_barrier_wait()
barrier_func: Thread 5 started
barrier_test: Thread 5 created
barrier_func: Thread 6 started
barrier_test: Thread 6 created
barrier_func: Thread 7 started
barrier_test: Thread 7 created
barrier_func: Thread 5 calling pthread_barrier_wait()
barrier_func: Thread 6 calling pthread_barrier_wait()
barrier_func: Thread 7 calling pthread_barrier_wait()
barrier_func: Thread 7, back with status=PTHREAD_BARRIER_SERIAL_THREAD (I AM SPECIAL)
barrier_func: Thread 2, back with status=PTHREAD_BARRIER_SERIAL_THREAD (I AM SPECIAL)
barrier_func: Thread 0, back with status=0 (I am not special)
barrier_func: Thread 1, back with status=0 (I am not special)
barrier_func: Thread 2, back with status=0 (I am not special)
barrier_func: Thread 3, back with status=0 (I am not special)
barrier_func: Thread 4, back with status=0 (I am not special)
barrier_func: Thread 5, back with status=0 (I am not special)
barrier_func: Thread 6, back with status=0 (I am not special)
barrier_func: Thread 2 done
barrier_func: Thread 7 done
barrier_func: Thread 0 done
barrier_func: Thread 1 done
barrier_func: Thread 6 done
barrier_func: Thread 3 done
barrier_func: Thread 4 done
barrier_func: Thread 5 done
barrier_test: Thread 0 completed with result=0
barrier_test: Thread 1 completed with result=0
barrier_test: Thread 2 completed with result=0
barrier_test: Thread 3 completed with result=0
barrier_test: Thread 4 completed with result=0
barrier_test: Thread 5 completed with result=0
barrier_test: Thread 6 completed with result=0
barrier_test: Thread 7 completed with result=0
End of test memory usage:
VARIABLE BEFORE AFTER
======== ======== ========
arena 7b550 7b550
ordblks 4 4
mxordblk 76b20 76b20
uordblks 35c0 35c0
fordblks 77f90 77f90
arena 7c200 7c200
ordblks 3 3
mxordblk 79e70 79e70
uordblks 1980 1980
fordblks 7a880 7a880
Final memory usage:
VARIABLE BEFORE AFTER
======== ======== ========
arena 7b550 7b550
ordblks 2 4
mxordblk 76b20 76b20
uordblks 33d0 35c0
fordblks 78180 77f90
arena 7c200 7c200
ordblks 2 3
mxordblk 79e70 79e70
uordblks 19d0 1980
fordblks 7a830 7a880
user_main: Exitting