[M3devel] AMD64_FREEBSD problems with current RC from m3 site

Mika Nystrom mika at async.async.caltech.edu
Sat Oct 31 19:54:01 CET 2009


Argh this is my first experience with FreeBSD 7.  I thought this was all simple and clear by now.

PTHREAD(3)             FreeBSD Library Functions Manual             PTHREAD(3)

NAME
     pthread -- POSIX thread functions

LIBRARY
     POSIX Threads Library (libpthread, -lpthread)

SYNOPSIS
     #include <pthread.h>

DESCRIPTION
     POSIX threads are a set of functions that support applications with
     requirements for multiple flows of control, called threads, within a
     process.  Multithreading is used to improve the performance of a program.

     The POSIX thread functions are summarized in this section in the follow-
     ing groups:

           o   Thread Routines
           o   Attribute Object Routines
           o   Mutex Routines
           o   Condition Variable Routines
           o   Read/Write Lock Routines
           o   Per-Thread Context Routines
           o   Cleanup Routines

   Thread Routines
     int pthread_create(pthread_t *thread, const pthread_attr_t *attr,
             void *(*start_routine)(void *), void *arg)
             Creates a new thread of execution.

     int pthread_cancel(pthread_t thread)
...

IMPLEMENTATION NOTES
     The current FreeBSD POSIX thread implementation is built in two
     libraries, 1:1 Threading Library (libthr, -lthr), and N:M Threading
     Library (libkse, -lkse).  They contain both thread-safe versions of
     Standard C Library (libc, -lc) functions and the thread functions.
     Threaded applications are linked with one of these libraries.

SEE ALSO
     pthread_atfork(3), pthread_cancel(3), pthread_cleanup_pop(3),
     pthread_cleanup_push(3), pthread_condattr_destroy(3),
     pthread_condattr_init(3), pthread_cond_broadcast(3),
     pthread_cond_destroy(3), pthread_cond_init(3), pthread_cond_signal(3),
     pthread_cond_timedwait(3), pthread_cond_wait(3), pthread_create(3),
     pthread_detach(3), pthread_equal(3), pthread_exit(3),
     pthread_getspecific(3), pthread_join(3), pthread_key_delete(3),
     pthread_kill(3), pthread_mutexattr_destroy(3),
     pthread_mutexattr_getprioceiling(3), pthread_mutexattr_getprotocol(3),
     pthread_mutexattr_gettype(3), pthread_mutexattr_init(3),
     pthread_mutexattr_setprioceiling(3), pthread_mutexattr_setprotocol(3),
     pthread_mutexattr_settype(3), pthread_mutex_destroy(3),
     pthread_mutex_init(3), pthread_mutex_lock(3), pthread_mutex_trylock(3),
     pthread_mutex_unlock(3), pthread_once(3), pthread_rwlockattr_destroy(3),
     pthread_rwlockattr_getpshared(3), pthread_rwlockattr_init(3),
     pthread_rwlockattr_setpshared(3), pthread_rwlock_destroy(3),
     pthread_rwlock_init(3), pthread_rwlock_rdlock(3),
     pthread_rwlock_unlock(3), pthread_rwlock_wrlock(3), pthread_self(3),
     pthread_setcancelstate(3), pthread_setcanceltype(3),
     pthread_setspecific(3), pthread_testcancel(3)

STANDARDS
     The functions with the pthread_ prefix and not _np suffix or
     pthread_rwlock prefix conform to ISO/IEC 9945-1:1996 (``POSIX.1'').

     The functions with the pthread_ prefix and _np suffix are non-portable
     extensions to POSIX threads.

     The functions with the pthread_rwlock prefix are extensions created by
     The Open Group as part of the Version 2 of the Single UNIX Specification
     (``SUSv2'').

FreeBSD 7.2                    October 19, 2007                    FreeBSD 7.2


>
>Do you know which one -lpthread gives you on FreeBSD?
>
>
>On 31 Oct 2009, at 14:26, Mika Nystrom wrote:
>
>> Let's see here we go:
>>
>>        libc.so.7 => /lib/libc.so.7 (0x804c4e000)
>>
>> -> linking mktisolator
>> generate _m3main.new
>> compare _m3main.new _m3main.mc
>> rm _m3main.new
>> gcc -gstabs+ -m64 -fPIC -z now -z origin -Bsymbolic -Wl,--fatal- 
>> warnings -Wl,--warn-common -Wl,-rpath,\$ORIGIN -Wl,-rpath,\ 
>> $ORIGIN/../lib -o mktisolator  _m3main.o MktIsolator.io  
>> MktIsolator.mo Main.mo -Wl,-rpath,/home/mika/t/mscheme/modula3scheme/ 
>> AMD64_FREEBSD -L/home/mika/t/mscheme/modula3scheme/AMD64_FREEBSD - 
>> lmodula3scheme -Wl,-rpath,/home/mika/t/calarm/htmltable/ 
>> AMD64_FREEBSD -L/home/mika/t/calarm/htmltable/AMD64_FREEBSD - 
>> lhtmltable -Wl,-rpath,/home/mika/t/calarm/postgresql/AMD64_FREEBSD - 
>> L/home/mika/t/calarm/postgresql/AMD64_FREEBSD -lpostgresql -Wl,- 
>> rpath,/usr/local/lib -L/usr/local/lib -lpq -Wl,-rpath,/home/mika/t/ 
>> calarm/twslib/twslogger/AMD64_FREEBSD -L/home/mika/t/calarm/twslib/ 
>> twslogger/AMD64_FREEBSD -ltwslogger -Wl,-rpath,/home/mika/t/calarm/ 
>> fastrw/AMD64_FREEBSD -L/home/mika/t/calarm/fastrw/AMD64_FREEBSD - 
>> lfastrw -Wl,-rpath,/home/mika/t/calarm/gw/AMD64_FREEBSD -L/home/mika/ 
>> t/calarm/gw/AMD64_FREEBSD -lgw -Wl,-rpath,/usr/local/cm3/pkg/ui/ 
>> AMD64_FREEBSD -L/usr/local/c
>> m3/pkg/ui/AMD64_FREEBSD -lm3ui -Wl,-rpath,/usr/local/cm3/pkg/X11R4/ 
>> AMD64_FREEBSD -L/usr/local/cm3/pkg/X11R4/AMD64_FREEBSD -lm3X11R4 - 
>> Wl,-rpath,/home/mika/t/calarm/mktsim/AMD64_FREEBSD -L/home/mika/t/ 
>> calarm/mktsim/AMD64_FREEBSD -lmktsim -Wl,-rpath,/home/mika/t/calarm/ 
>> fix/fix42/AMD64_FREEBSD -L/home/mika/t/calarm/fix/fix42/ 
>> AMD64_FREEBSD -lfix42 -Wl,-rpath,/home/mika/t/calarm/twslib/ 
>> testtrade2/tradecore/AMD64_FREEBSD -L/home/mika/t/calarm/twslib/ 
>> testtrade2/tradecore/AMD64_FREEBSD -ltradecore -Wl,-rpath,/home/mika/ 
>> t/mscheme/AMD64_FREEBSD -L/home/mika/t/mscheme/AMD64_FREEBSD - 
>> lmscheme -Wl,-rpath,/home/mika/t/calarm/fix/fix41/AMD64_FREEBSD -L/ 
>> home/mika/t/calarm/fix/fix41/AMD64_FREEBSD -lfix41 -Wl,-rpath,/home/ 
>> mika/t/calarm/fix/fixcommon/AMD64_FREEBSD -L/home/mika/t/calarm/fix/ 
>> fixcommon/AMD64_FREEBSD -lfixcommon -Wl,-rpath,/usr/local/cm3/pkg/ 
>> parseparams/AMD64_FREEBSD -L/usr/local/cm3/pkg/parseparams/ 
>> AMD64_FREEBSD -lm3parseparams -Wl,-rpath,/home/mika/t/mscheme/scheme- 
>> lib/AMD64_FREE
>> BSD -L/home/mika/t/mscheme/scheme-lib/AMD64_FREEBSD -lscheme-lib - 
>> Wl,-rpath,/home/mika/t/calarm/twslib/testtrade2/inventory/ 
>> AMD64_FREEBSD -L/home/mika/t/calarm/twslib/testtrade2/inventory/ 
>> AMD64_FREEBSD -linventory -Wl,-rpath,/home/mika/t/calarm/twslib/ 
>> AMD64_FREEBSD -L/home/mika/t/calarm/twslib/AMD64_FREEBSD -ltwslib - 
>> Wl,-rpath,/home/mika/t/rdwr/AMD64_FREEBSD -L/home/mika/t/rdwr/ 
>> AMD64_FREEBSD -lrdwr -Wl,-rpath,/home/mika/t/calarm/anova/ 
>> AMD64_FREEBSD -L/home/mika/t/calarm/anova/AMD64_FREEBSD -lanova -Wl,- 
>> rpath,/home/mika/t/calarm/finlib/AMD64_FREEBSD -L/home/mika/t/calarm/ 
>> finlib/AMD64_FREEBSD -lfinlib -Wl,-rpath,/home/mika/t/calarm/ 
>> m3readline/AMD64_FREEBSD -L/home/mika/t/calarm/m3readline/ 
>> AMD64_FREEBSD -lm3readline -Wl,-rpath,/home/mika/t/parserlib/ 
>> parserlib/AMD64_FREEBSD -L/home/mika/t/parserlib/parserlib/ 
>> AMD64_FREEBSD -lparserlib -Wl,-rpath,/home/mika/t/calarm/sx/ 
>> AMD64_FREEBSD -L/home/mika/t/calarm/sx/AMD64_FREEBSD -lsx -Wl,- 
>> rpath,/home/mika/t/cit_util/AMD64_FREEBSD -L/home/
>> mika/t/cit_util/AMD64_FREEBSD -lcit_util -Wl,-rpath,/usr/local/cm3/ 
>> pkg/netobj/AMD64_FREEBSD -L/usr/local/cm3/pkg/netobj/AMD64_FREEBSD - 
>> lm3netobj -Wl,-rpath,/home/mika/t/rdwrreset/AMD64_FREEBSD -L/home/ 
>> mika/t/rdwrreset/AMD64_FREEBSD -lrdwrreset -Wl,-rpath,/home/mika/t/ 
>> cit_common/AMD64_FREEBSD -L/home/mika/t/cit_common/AMD64_FREEBSD - 
>> lcit_common -Wl,-rpath,/usr/local/cm3/pkg/set/AMD64_FREEBSD -L/usr/ 
>> local/cm3/pkg/set/AMD64_FREEBSD -lset -Wl,-rpath,/usr/local/cm3/pkg/ 
>> libbuf/AMD64_FREEBSD -L/usr/local/cm3/pkg/libbuf/AMD64_FREEBSD - 
>> llibbuf -Wl,-rpath,/usr/local/cm3/pkg/patternmatching/AMD64_FREEBSD - 
>> L/usr/local/cm3/pkg/patternmatching/AMD64_FREEBSD -lpatternmatching - 
>> Wl,-rpath,/usr/local/cm3/pkg/tcp/AMD64_FREEBSD -L/usr/local/cm3/pkg/ 
>> tcp/AMD64_FREEBSD -lm3tcp -Wl,-rpath,/usr/local/cm3/pkg/libm3/ 
>> AMD64_FREEBSD -L/usr/local/cm3/pkg/libm3/AMD64_FREEBSD -lm3 -Wl,- 
>> rpath,/usr/local/cm3/pkg/m3core/AMD64_FREEBSD -L/usr/local/cm3/pkg/ 
>> m3core/AMD64_FREEBSD -lm3core -L/usr/X11R6/lib -lXaw -lX
>> mu -lXext -lXt -lSM -lICE -lX11 -lm -lpthread
>> rm m3make.args
>> cd .
>>
>>
>> Tony Hosking writes:
>>>
>>> --Apple-Mail-21--467118296
>>> Content-Type: text/plain;
>>> 	charset=US-ASCII;
>>> 	format=flowed;
>>> 	delsp=yes
>>> Content-Transfer-Encoding: 7bit
>>>
>>> Which pthread library are you linking to?
>>>
>>> On 31 Oct 2009, at 12:15, Mika Nystrom wrote:
>>>
>>>>
>>>> More details about the "catatonic" case.  It's pretty bad.  Even
>>>> ctrl-\
>>>> won't wake it up properly.  Ctrl-\ is supposed to cause the  
>>>> program to
>>>> abort and dump core.  It does nothing to my program now!  And I  
>>>> think
>>>> I've "lost threads" before, too.
>>>>
>>>> Btw,
>>>>
>>>> (90)ginger:~/t>uname -a
>>>> FreeBSD ginger 7.2-RELEASE FreeBSD 7.2-RELEASE #0: Fri May  1
>>>> 07:18:07 UTC 2009     root at driscoll.cse.buffalo.edu:/usr/obj/usr/ 
>>>> src/
>>>> sys/GENERIC  amd64
>>>>
>>>> I'm happy to help debug if someone can give me some pointers...
>>>>
>>>>
>>>>    Mika
>>>>
>>>> ^\
>>>> Program received signal SIGQUIT, Quit.
>>>> 0x0000000804ca037c in sigsuspend () from /lib/libc.so.7
>>>> (m3gdb) cont
>>>> Continuing.
>>>>
>>>>
>>>> ***
>>>> *** runtime error:
>>>> ***    aborted
>>>>
>>>>
>>>>
>>>>
>>>> ^\
>>>> Program received signal SIGQUIT, Quit.
>>>> 0x0000000804ca037c in sigsuspend () from /lib/libc.so.7
>>>> (m3gdb) where
>>>> #0  0x0000000804ca037c in sigsuspend () from /lib/libc.so.7
>>>> #1  0x0000000804b41d0a in sigsuspend () from /lib/libthr.so.3
>>>> #2  0x0000000803780da0 in ThreadPThread__sigsuspend ()
>>>>   at ../src/thread/PTHREAD/ThreadPThreadC.c:117
>>>> #3  0x000000080377ff6f in SignalHandler (sig=Invalid C/C++ type code
>>>> 28 in symbol table.
>>>> ) at ../src/thread/PTHREAD/ThreadPThread.m3:1261
>>>> #4  <signal handler called>
>>>> #5  0x0000000804b4829c in __error () from /lib/libthr.so.3
>>>> #6  0x0000000804b46365 in pthread_cond_signal () from /lib/ 
>>>> libthr.so.3
>>>> #7  0x000000080377a85d in XWait (self=Invalid C/C++ type code 26 in
>>>> symbol table.
>>>> ) at ../src/thread/PTHREAD/ThreadPThread.m3:227
>>>> #8  0x000000080377b026 in Wait (m=Invalid C/C++ type code 26 in
>>>> symbol table.
>>>> ) at ../src/thread/PTHREAD/ThreadPThread.m3:278
>>>> #9  0x000000080294a39c in WaitE (on=Invalid C/C++ type code 30 in
>>>> symbol table.
>>>> ) at ../src/SX.m3:217
>>>> #10 0x000000080294999a in Wait (on=Invalid C/C++ type code 30 in
>>>> symbol table.
>>>> ) at ../src/SX.m3:152
>>>> #11 0x00000008011ae748 in WaitLocked (t=Invalid C/C++ type code 26
>>>> in symbol table.
>>>> ) at ../src/MktAsset.m3:117
>>>> #12 0x00000008011b4950 in RecApply (cl=Invalid C/C++ type code 26 in
>>>> symbol table.
>>>> ) at ../src/MktPlace.m3:469
>>>> #13 0x000000080377cdf3 in RunThread (me=Invalid C/C++ type code 29
>>>> in symbol table.
>>>> ) at ../src/thread/PTHREAD/ThreadPThread.m3:547
>>>> #14 0x000000080377ca6a in ThreadBase (param=Invalid C/C++ type code
>>>> 35 in symbol table.
>>>> ) at ../src/thread/PTHREAD/ThreadPThread.m3:523
>>>> #15 0x0000000804b3e4d1 in pthread_getprio () from /lib/libthr.so.3
>>>> #16 0x0000000000000000 in ?? ()
>>>> (m3gdb)
>>>>
>>>>
>>>> Mika Nystrom writes:
>>>>> Hello m3devel,
>>>>>
>>>>> I'm running into problems with the current release candidate.
>>>>> I'm attaching a backtrace from one crash, but I think I also am
>>>>> seeing
>>>>> deadlocks in the threading system---my application goes catatonic.
>>>>> Of course it *is* possible it's a bug in my application, but it  
>>>>> works
>>>>> on PM3 and on CM3 on PPC_DARWIN.
>>>>>
>>>>> Finally I'm still concerned about threading performance but in the
>>>>> light
>>>>> of the bugs it's hard to say much about it yet, I think...
>>>>>
>>>>> (The program in question is a highly multithreaded stock market
>>>>> simulator.)
>>>>>
>>>>>   Mika
>>>>>
>>>>> ============================================================
>>>>>
>>>>> ***
>>>>> *** runtime error:
>>>>> ***    <*ASSERT*> failed.
>>>>> ***    file "../src/thread/PTHREAD/ThreadPThread.m3", line 589
>>>>> ***
>>>>>
>>>>>
>>>>> Program received signal SIGABRT, Aborted.
>>>>> 0x0000000804c9fa9c in thr_kill () from /lib/libc.so.7
>>>>> (m3gdb) show args
>>>>> Argument list to give program being debugged when it is started is
>>>>> "@M3debugtrace=mktsim.out -tz America/New_York -bugbehavior None -
>>>>> symbology ric -symbology tws
>>>>> -replay mktisolator090910.ticks 2009-09-10 at 13:30 -to
>>>>> 2009-09-10 at 15:59 -port 7001 -dp 0.05 7003 -dp 0.10 7005 -dp 0.15
>>>>> 7007 -dp 0.20 7009 -dp 0.25 7011 -dp 0.30
>>>>> 7013 -sync 60 -unsolicitedfills 0.5 -cp 0.5 -xtimeport 7200
>>>>> isolate90.src".
>>>>> (m3gdb) where
>>>>> #0  0x0000000804c9fa9c in thr_kill () from /lib/libc.so.7
>>>>> #1  0x0000000804d2ef8b in abort () from /lib/libc.so.7
>>>>> #2  0x0000000803777bf7 in Crash () at ../src/runtime/POSIX/ 
>>>>> RTOS.m3:20
>>>>> #3  0x000000080376b615 in Crash (msg=Invalid C/C++ type code 26 in
>>>>> symbol table.
>>>>> ) at ../src/runtime/common/RTProcess.m3:65
>>>>> #4  0x0000000803768ab2 in EndError (crash=Invalid C/C++ type code
>>>>> 36 in symbol table.
>>>>> ) at ../src/runtime/common/RTError.m3:118
>>>>> #5  0x00000008037687aa in MsgS (file=Invalid C/C++ type code 35 in
>>>>> symbol table.
>>>>> ) at ../src/runtime/common/RTError.m3:40
>>>>> #6  0x0000000803768f85 in Crash (a=Invalid C/C++ type code 30 in
>>>>> symbol table.
>>>>> ) at ../src/runtime/common/RTException.m3:79
>>>>> #7  0x0000000803768c3c in DefaultBackstop (a=Invalid C/C++ type
>>>>> code 30 in symbol table.
>>>>> ) at ../src/runtime/common/RTException.m3:39
>>>>> #8  0x0000000803768b6e in InvokeBackstop (a=Invalid C/C++ type code
>>>>> 30 in symbol table.
>>>>> ) at ../src/runtime/common/RTException.m3:25
>>>>> #9  0x0000000803778eab in Raise (act=Invalid C/C++ type code 30 in
>>>>> symbol table.
>>>>> ) at ../src/runtime/ex_frame/RTExFrame.m3:29
>>>>> #10 0x0000000803768cee in DefaultBackstop (a=Invalid C/C++ type
>>>>> code 30 in symbol table.
>>>>> ) at ../src/runtime/common/RTException.m3:47
>>>>> #11 0x0000000803768b6e in InvokeBackstop (a=Invalid C/C++ type code
>>>>> 30 in symbol table.
>>>>> ) at ../src/runtime/common/RTException.m3:25
>>>>> #12 0x0000000803778eab in Raise (act=Invalid C/C++ type code 30 in
>>>>> symbol table.
>>>>> ) at ../src/runtime/ex_frame/RTExFrame.m3:29
>>>>> #13 0x0000000803750241 in ReportFault (module=Invalid C/C++ type
>>>>> code 35 in symbol table.
>>>>> ) at ../src/runtime/common/RTHooks.m3:110
>>>>> #14 0x0000000803780acf in _m3_fault (arg=Invalid C/C++ type code 39
>>>>> in symbol table.
>>>>> )
>>>>> from /usr/local/cm3/pkg/m3core/AMD64_FREEBSD/libm3core.so.5
>>>>> #15 0x000000080377d1bc in Fork (closure=Invalid C/C++ type code 26
>>>>> in symbol table.
>>>>> ) at ../src/thread/PTHREAD/ThreadPThread.m3:589
>>>>> #16 0x00000008011b1651 in AddAsset (t=Invalid C/C++ type code 26 in
>>>>> symbol table.
>>>>> ) at ../src/MktPlace.m3:116
>>>>> #17 0x00000000004085c6 in Init (t=Invalid C/C++ type code 26 in
>>>>> symbol table.
>>>>> ) at ../src/MktIsolator.m3:514
>>>>> #18 0x00000000004106af in Main (mode=Invalid C/C++ type code 39 in
>>>>> symbol table.
>>>>> ) at ../src/Main.m3:734
>>>>> #19 0x0000000803767c19 in RunMainBody (m=Invalid C/C++ type code 29
>>>>> in symbol table.
>>>>> ) at ../src/runtime/common/RTLinker.m3:400
>>>>> #20 0x0000000803766e00 in AddUnitI (m=Invalid C/C++ type code 29 in
>>>>> symbol table.
>>>>> ) at ../src/runtime/common/RTLinker.m3:114
>>>>> #21 0x0000000803766e9e in AddUnit (b=Invalid C/C++ type code 31 in
>>>>> symbol table.
>>>>> ) at ../src/runtime/common/RTLinker.m3:123
>>>>> ---Type <return> to continue, or q <return> to quit---
>>>>> #22 0x0000000000404194 in main (argc=44, argv=0x7fffffffdde8,
>>>>> envp=0x7fffffffdf50) at _m3main.mc:4
>>>>> #23 0x00000000004040de in _start ()
>>>>> (m3gdb) up 15
>>>>> #15 0x000000080377d1bc in Fork (closure=16_00000008064c8930)
>>>>>  at ../src/thread/PTHREAD/ThreadPThread.m3:589
>>>>> 589         WITH r = pthread_mutex_lock_active() DO <*ASSERT r=0*>
>>>>> END;
>>>>> Current language:  auto; currently Modula-3
>>>>> (m3gdb) print r
>>>>> $1 = 11
>>>>> (m3gdb)
>>>>>
>>>>> ============================================================
>>>>>
>>>>>
>>>
>>>
>>> --Apple-Mail-21--467118296
>>> Content-Type: text/html;
>>> 	charset=US-ASCII
>>> Content-Transfer-Encoding: quoted-printable
>>>
>>> <html><body style=3D"word-wrap: break-word; -webkit-nbsp-mode:  
>>> space; =
>>> -webkit-line-break: after-white-space; ">Which pthread library are  
>>> you =
>>> linking to?<br><div apple-content-edited=3D"true"> <span =
>>> class=3D"Apple-style-span" style=3D"border-collapse: separate;  
>>> color: =
>>> rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: =
>>> normal; font-variant: normal; font-weight: normal; letter-spacing: =
>>> normal; line-height: normal; orphans: 2; text-align: auto; text- 
>>> indent: =
>>> 0px; text-transform: none; white-space: normal; widows: 2; word- 
>>> spacing: =
>>> 0px; -webkit-border-horizontal-spacing: 0px; =
>>> -webkit-border-vertical-spacing: 0px; =
>>> -webkit-text-decorations-in-effect: none; -webkit-text-size-adjust: =
>>> auto; -webkit-text-stroke-width: 0; "><div style=3D"word-wrap: =
>>> break-word; -webkit-nbsp-mode: space; -webkit-line-break: =
>>> after-white-space; "><span class=3D"Apple-style-span" =
>>> style=3D"border-collapse: separate; -webkit-border-horizontal- 
>>> spacing: =
>>> 0px; -webkit-border-vertical-spacing: 0px; color: rgb(0, 0, 0); =
>>> font-family: Helvetica; font-size: 12px; font-style: normal; =
>>> font-variant: normal; font-weight: normal; letter-spacing: normal; =
>>> line-height: normal; -webkit-text-decorations-in-effect: none; =
>>> text-indent: 0px; -webkit-text-size-adjust: auto; text-transform:  
>>> none; =
>>> orphans: 2; white-space: normal; widows: 2; word-spacing: 0px;  
>>> "><div =
>>> style=3D"word-wrap: break-word; -webkit-nbsp-mode: space; =
>>> -webkit-line-break: after-white-space; "><span class=3D"Apple-style- 
>>> span" =
>>> style=3D"border-collapse: separate; -webkit-border-horizontal- 
>>> spacing: =
>>> 0px; -webkit-border-vertical-spacing: 0px; color: rgb(0, 0, 0); =
>>> font-family: Helvetica; font-size: 12px; font-style: normal; =
>>> font-variant: normal; font-weight: normal; letter-spacing: normal; =
>>> line-height: normal; -webkit-text-decorations-in-effect: none; =
>>> text-indent: 0px; -webkit-text-size-adjust: auto; text-transform:  
>>> none; =
>>> orphans: 2; white-space: normal; widows: 2; word-spacing: 0px;  
>>> "><span =
>>> class=3D"Apple-style-span" style=3D"border-collapse: separate; =
>>> -webkit-border-horizontal-spacing: 0px; -webkit-border-vertical- 
>>> spacing: =
>>> 0px; color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; =
>>> font-style: normal; font-variant: normal; font-weight: normal; =
>>> letter-spacing: normal; line-height: normal; =
>>> -webkit-text-decorations-in-effect: none; text-indent: 0px; =
>>> -webkit-text-size-adjust: auto; text-transform: none; orphans: 2; =
>>> white-space: normal; widows: 2; word-spacing: 0px; "><span =
>>> class=3D"Apple-style-span" style=3D"border-collapse: separate; =
>>> -webkit-border-horizontal-spacing: 0px; -webkit-border-vertical- 
>>> spacing: =
>>> 0px; color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; =
>>> font-style: normal; font-variant: normal; font-weight: normal; =
>>> letter-spacing: normal; line-height: normal; =
>>> -webkit-text-decorations-in-effect: none; text-indent: 0px; =
>>> -webkit-text-size-adjust: auto; text-transform: none; orphans: 2; =
>>> white-space: normal; widows: 2; word-spacing: 0px; "><span =
>>> class=3D"Apple-style-span" style=3D"border-collapse: separate; =
>>> -webkit-border-horizontal-spacing: 0px; -webkit-border-vertical- 
>>> spacing: =
>>> 0px; color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; =
>>> font-style: normal; font-variant: normal; font-weight: normal; =
>>> letter-spacing: normal; line-height: normal; =
>>> -webkit-text-decorations-in-effect: none; text-indent: 0px; =
>>> -webkit-text-size-adjust: auto; text-transform: none; orphans: 2; =
>>> white-space: normal; widows: 2; word-spacing: 0px; "><span =
>>> class=3D"Apple-style-span" style=3D"border-collapse: separate; =
>>> -webkit-border-horizontal-spacing: 0px; -webkit-border-vertical- 
>>> spacing: =
>>> 0px; color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; =
>>> font-style: normal; font-variant: normal; font-weight: normal; =
>>> letter-spacing: normal; line-height: normal; =
>>> -webkit-text-decorations-in-effect: none; text-indent: 0px; =
>>> -webkit-text-size-adjust: auto; text-transform: none; orphans: 2; =
>>> white-space: normal; widows: 2; word-spacing: 0px; "><span =
>>> class=3D"Apple-style-span" style=3D"border-collapse: separate; =
>>> -webkit-border-horizontal-spacing: 0px; -webkit-border-vertical- 
>>> spacing: =
>>> 0px; color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; =
>>> font-style: normal; font-variant: normal; font-weight: normal; =
>>> letter-spacing: normal; line-height: normal; =
>>> -webkit-text-decorations-in-effect: none; text-indent: 0px; =
>>> -webkit-text-size-adjust: auto; text-transform: none; orphans: 2; =
>>> white-space: normal; widows: 2; word-spacing: 0px; "><span =
>>> class=3D"Apple-style-span" style=3D"border-collapse: separate; =
>>> -webkit-border-horizontal-spacing: 0px; -webkit-border-vertical- 
>>> spacing: =
>>> 0px; color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; =
>>> font-style: normal; font-variant: normal; font-weight: normal; =
>>> letter-spacing: normal; line-height: normal; =
>>> -webkit-text-decorations-in-effect: none; text-indent: 0px; =
>>> -webkit-text-size-adjust: auto; text-transform: none; orphans: 2; =
>>> white-space: normal; widows: 2; word-spacing: 0px; "><span =
>>> class=3D"Apple-style-span" style=3D"border-collapse: separate; =
>>> -webkit-border-horizontal-spacing: 0px; -webkit-border-vertical- 
>>> spacing: =
>>> 0px; color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; =
>>> font-style: normal; font-variant: normal; font-weight: normal; =
>>> letter-spacing: normal; line-height: normal; =
>>> -webkit-text-decorations-in-effect: none; text-indent: 0px; =
>>> -webkit-text-size-adjust: auto; text-transform: none; orphans: 2; =
>>> white-space: normal; widows: 2; word-spacing: 0px; "><div><span =
>>> class=3D"Apple-style-span" style=3D"font-size: medium;"><font =
>>> class=3D"Apple-style-span" color=3D"#0000FF" face=3D"'Gill =
>>> Sans'"><br></font></span></div></span></span></span></span></span></ 
>>> span><=
>>> /span></span></div></span></div></span></div><div><div>On 31 Oct  
>>> 2009, =
>>> at 12:15, Mika Nystrom wrote:</div><br =
>>> class=3D"Apple-interchange-newline"><blockquote =
>>> type=3D"cite"><div><br>More details about the "catatonic" case. =
>>>  It's pretty bad.  Even ctrl-\<br>won't wake it up  
>>> properly. =
>>>  Ctrl-\ is supposed to cause the program to<br>abort and dump  
>>> core. =
>>>  It does nothing to my program now!  And I think<br>I've  
>>> "lost =
>>> threads" before, too.<br><br>Btw,<br><br>(90)ginger:~/t>uname =
>>> -a<br>FreeBSD ginger 7.2-RELEASE FreeBSD 7.2-RELEASE #0: Fri May  
>>>  1 =
>>> 07:18:07 UTC 2009     <a =
>>> href=3D"mailto:root at driscoll.cse.buffalo.edu">root at driscoll.cse.buffalo.ed 
>>> =
>>> u</a>:/usr/obj/usr/src/sys/GENERIC  amd64<br><br>I'm happy to  
>>> help =
>>> debug if someone can give me some pointers...<br><br><br> =
>>>     Mika<br><br>^\<br>Program received signal =
>>> SIGQUIT, Quit.<br>0x0000000804ca037c in sigsuspend () from =
>>> /lib/libc.so.7<br>(m3gdb) cont<br>Continuing.<br><br><br>***<br>*** =
>>> runtime error:<br>*** =
>>>    aborted<br><br><br><br><br>^\<br>Program received =
>>> signal SIGQUIT, Quit.<br>0x0000000804ca037c in sigsuspend () from =
>>> /lib/libc.so.7<br>(m3gdb) where<br>#0  0x0000000804ca037c in =
>>> sigsuspend () from /lib/libc.so.7<br>#1  0x0000000804b41d0a in =
>>> sigsuspend () from /lib/libthr.so.3<br>#2  0x0000000803780da0  
>>> in =
>>> ThreadPThread__sigsuspend ()<br>    at =
>>> ../src/thread/PTHREAD/ThreadPThreadC.c:117<br>#3 =
>>>  0x000000080377ff6f in SignalHandler (sig=3DInvalid C/C++ type  
>>> code =
>>> 28 in symbol table.<br>) at =
>>> ../src/thread/PTHREAD/ThreadPThread.m3:1261<br>#4  <signal =
>>> handler called><br>#5  0x0000000804b4829c in __error ()  
>>> from =
>>> /lib/libthr.so.3<br>#6  0x0000000804b46365 in  
>>> pthread_cond_signal =
>>> () from /lib/libthr.so.3<br>#7  0x000000080377a85d in XWait =
>>> (self=3DInvalid C/C++ type code 26 in symbol table.<br>) at =
>>> ../src/thread/PTHREAD/ThreadPThread.m3:227<br>#8 =
>>>  0x000000080377b026 in Wait (m=3DInvalid C/C++ type code 26 in =
>>> symbol table.<br>) at ../src/thread/PTHREAD/ 
>>> ThreadPThread.m3:278<br>#9 =
>>>  0x000000080294a39c in WaitE (on=3DInvalid C/C++ type code 30  
>>> in =
>>> symbol table.<br>) at ../src/SX.m3:217<br>#10 0x000000080294999a in  
>>> Wait =
>>> (on=3DInvalid C/C++ type code 30 in symbol table.<br>) at =
>>> ../src/SX.m3:152<br>#11 0x00000008011ae748 in WaitLocked  
>>> (t=3DInvalid =
>>> C/C++ type code 26 in symbol table.<br>) at =
>>> ../src/MktAsset.m3:117<br>#12 0x00000008011b4950 in RecApply  
>>> (cl=3DInvalid=
>>> C/C++ type code 26 in symbol table.<br>) at =
>>> ../src/MktPlace.m3:469<br>#13 0x000000080377cdf3 in RunThread =
>>> (me=3DInvalid C/C++ type code 29 in symbol table.<br>) at =
>>> ../src/thread/PTHREAD/ThreadPThread.m3:547<br>#14  
>>> 0x000000080377ca6a in =
>>> ThreadBase (param=3DInvalid C/C++ type code 35 in symbol  
>>> table.<br>) at =
>>> ../src/thread/PTHREAD/ThreadPThread.m3:523<br>#15  
>>> 0x0000000804b3e4d1 in =
>>> pthread_getprio () from /lib/libthr.so.3<br>#16 0x0000000000000000  
>>> in ?? =
>>> ()<br>(m3gdb) <br><br><br>Mika Nystrom writes:<br><blockquote =
>>> type=3D"cite">Hello m3devel,<br></blockquote><blockquote =
>>> type=3D"cite"><br></blockquote><blockquote type=3D"cite">I'm  
>>> running =
>>> into problems with the current release =
>>> candidate.<br></blockquote><blockquote type=3D"cite">I'm attaching  
>>> a =
>>> backtrace from one crash, but I think I also am =
>>> seeing<br></blockquote><blockquote type=3D"cite">deadlocks in the =
>>> threading system---my application goes =
>>> catatonic.<br></blockquote><blockquote type=3D"cite">Of course it  
>>> *is* =
>>> possible it's a bug in my application, but it =
>>> works<br></blockquote><blockquote type=3D"cite">on PM3 and on CM3  
>>> on =
>>> PPC_DARWIN.<br></blockquote><blockquote =
>>> type=3D"cite"><br></blockquote><blockquote type=3D"cite">Finally  
>>> I'm =
>>> still concerned about threading performance but in the =
>>> light<br></blockquote><blockquote type=3D"cite">of the bugs it's  
>>> hard to =
>>> say much about it yet, I think...<br></blockquote><blockquote =
>>> type=3D"cite"><br></blockquote><blockquote type=3D"cite">(The  
>>> program in =
>>> question is a highly multithreaded stock =
>>> market<br></blockquote><blockquote =
>>> type=3D"cite">simulator.)<br></blockquote><blockquote =
>>> type=3D"cite"><br></blockquote><blockquote type=3D"cite"> =
>>>    Mika<br></blockquote><blockquote =
>>> type=3D"cite"><br></blockquote><blockquote =
>>> type 
>>> = 
>>> 3D 
>>> "cite">=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
>>> = 
>>> 3D 
>>> = 
>>> 3D 
>>> = 
>>> 3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
>>> =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D<br></ 
>>> blockquote><blockquote =
>>> type=3D"cite"><br></blockquote><blockquote =
>>> type=3D"cite">***<br></blockquote><blockquote type=3D"cite">***  
>>> runtime =
>>> error:<br></blockquote><blockquote type=3D"cite">*** =
>>>    <*ASSERT*> failed.<br></ 
>>> blockquote><blockquote =
>>> type=3D"cite">***    file =
>>> "../src/thread/PTHREAD/ThreadPThread.m3", line =
>>> 589<br></blockquote><blockquote =
>>> type=3D"cite">***<br></blockquote><blockquote =
>>> type=3D"cite"><br></blockquote><blockquote =
>>> type=3D"cite"><br></blockquote><blockquote type=3D"cite">Program =
>>> received signal SIGABRT, Aborted.<br></blockquote><blockquote =
>>> type=3D"cite">0x0000000804c9fa9c in thr_kill () from =
>>> /lib/libc.so.7<br></blockquote><blockquote type=3D"cite">(m3gdb)  
>>> show =
>>> args<br></blockquote><blockquote type=3D"cite">Argument list to  
>>> give =
>>> program being debugged when it is started is  
>>> "@M3debugtrace=3Dmktsim.out =
>>> -tz America/New_York -bugbehavior None -symbology ric -symbology =
>>> tws<br></blockquote><blockquote type=3D"cite">-replay =
>>> mktisolator090910.ticks 2009-09-10 at 13:30 -to 2009-09-10 at 15:59 -port  
>>> 7001 =
>>> -dp 0.05 7003 -dp 0.10 7005 -dp 0.15 7007 -dp 0.20 7009 -dp 0.25  
>>> 7011 =
>>> -dp 0.30 <br></blockquote><blockquote type=3D"cite">7013 -sync 60 =
>>> -unsolicitedfills 0.5 -cp 0.5 -xtimeport 7200 =
>>> isolate90.src".<br></blockquote><blockquote type=3D"cite">(m3gdb) =
>>> where<br></blockquote><blockquote type=3D"cite">#0 =
>>>  0x0000000804c9fa9c in thr_kill () from =
>>> /lib/libc.so.7<br></blockquote><blockquote type=3D"cite">#1 =
>>>  0x0000000804d2ef8b in abort () from =
>>> /lib/libc.so.7<br></blockquote><blockquote type=3D"cite">#2 =
>>>  0x0000000803777bf7 in Crash () at =
>>> ../src/runtime/POSIX/RTOS.m3:20<br></blockquote><blockquote =
>>> type=3D"cite">#3  0x000000080376b615 in Crash (msg=3DInvalid C/ 
>>> C++ =
>>> type code 26 in symbol table.<br></blockquote><blockquote  
>>> type=3D"cite">) =
>>> at ../src/runtime/common/RTProcess.m3:65<br></ 
>>> blockquote><blockquote =
>>> type=3D"cite">#4  0x0000000803768ab2 in EndError  
>>> (crash=3DInvalid =
>>> C/C++ type code 36 in symbol table.<br></blockquote><blockquote =
>>> type=3D"cite">) at =
>>> ../src/runtime/common/RTError.m3:118<br></blockquote><blockquote =
>>> type=3D"cite">#5  0x00000008037687aa in MsgS (file=3DInvalid C/ 
>>> C++ =
>>> type code 35 in symbol table.<br></blockquote><blockquote  
>>> type=3D"cite">) =
>>> at ../src/runtime/common/RTError.m3:40<br></blockquote><blockquote =
>>> type=3D"cite">#6  0x0000000803768f85 in Crash (a=3DInvalid C/C+ 
>>> + =
>>> type code 30 in symbol table.<br></blockquote><blockquote  
>>> type=3D"cite">) =
>>> at ../src/runtime/common/RTException.m3:79<br></ 
>>> blockquote><blockquote =
>>> type=3D"cite">#7  0x0000000803768c3c in DefaultBackstop  
>>> (a=3DInvalid =
>>> C/C++ type code 30 in symbol table.<br></blockquote><blockquote =
>>> type=3D"cite">) at =
>>> ../src/runtime/common/RTException.m3:39<br></blockquote><blockquote =
>>> type=3D"cite">#8  0x0000000803768b6e in InvokeBackstop  
>>> (a=3DInvalid =
>>> C/C++ type code 30 in symbol table.<br></blockquote><blockquote =
>>> type=3D"cite">) at =
>>> ../src/runtime/common/RTException.m3:25<br></blockquote><blockquote =
>>> type=3D"cite">#9  0x0000000803778eab in Raise (act=3DInvalid C/ 
>>> C++ =
>>> type code 30 in symbol table.<br></blockquote><blockquote  
>>> type=3D"cite">) =
>>> at ../src/runtime/ex_frame/RTExFrame.m3:29<br></ 
>>> blockquote><blockquote =
>>> type=3D"cite">#10 0x0000000803768cee in DefaultBackstop  
>>> (a=3DInvalid =
>>> C/C++ type code 30 in symbol table.<br></blockquote><blockquote =
>>> type=3D"cite">) at =
>>> ../src/runtime/common/RTException.m3:47<br></blockquote><blockquote =
>>> type=3D"cite">#11 0x0000000803768b6e in InvokeBackstop (a=3DInvalid =
>>> C/C++ type code 30 in symbol table.<br></blockquote><blockquote =
>>> type=3D"cite">) at =
>>> ../src/runtime/common/RTException.m3:25<br></blockquote><blockquote =
>>> type=3D"cite">#12 0x0000000803778eab in Raise (act=3DInvalid C/C++  
>>> type =
>>> code 30 in symbol table.<br></blockquote><blockquote  
>>> type=3D"cite">) at =
>>> ../src/runtime/ex_frame/RTExFrame.m3:29<br></blockquote><blockquote =
>>> type=3D"cite">#13 0x0000000803750241 in ReportFault  
>>> (module=3DInvalid =
>>> C/C++ type code 35 in symbol table.<br></blockquote><blockquote =
>>> type=3D"cite">) at =
>>> ../src/runtime/common/RTHooks.m3:110<br></blockquote><blockquote =
>>> type=3D"cite">#14 0x0000000803780acf in _m3_fault (arg=3DInvalid C/C 
>>> ++ =
>>> type code 39 in symbol table.<br></blockquote><blockquote =
>>> type=3D"cite">)<br></blockquote><blockquote type=3D"cite">  
>>>  from =
>>> /usr/local/cm3/pkg/m3core/AMD64_FREEBSD/libm3core.so.5<br></ 
>>> blockquote><bl=
>>> ockquote type=3D"cite">#15 0x000000080377d1bc in Fork  
>>> (closure=3DInvalid =
>>> C/C++ type code 26 in symbol table.<br></blockquote><blockquote =
>>> type=3D"cite">) at =
>>> ../src/thread/PTHREAD/ThreadPThread.m3:589<br></ 
>>> blockquote><blockquote =
>>> type=3D"cite">#16 0x00000008011b1651 in AddAsset (t=3DInvalid C/C++  
>>> type =
>>> code 26 in symbol table.<br></blockquote><blockquote  
>>> type=3D"cite">) at =
>>> ../src/MktPlace.m3:116<br></blockquote><blockquote  
>>> type=3D"cite">#17 =
>>> 0x00000000004085c6 in Init (t=3DInvalid C/C++ type code 26 in  
>>> symbol =
>>> table.<br></blockquote><blockquote type=3D"cite">) at =
>>> ../src/MktIsolator.m3:514<br></blockquote><blockquote  
>>> type=3D"cite">#18 =
>>> 0x00000000004106af in Main (mode=3DInvalid C/C++ type code 39 in  
>>> symbol =
>>> table.<br></blockquote><blockquote type=3D"cite">) at =
>>> ../src/Main.m3:734<br></blockquote><blockquote type=3D"cite">#19 =
>>> 0x0000000803767c19 in RunMainBody (m=3DInvalid C/C++ type code 29  
>>> in =
>>> symbol table.<br></blockquote><blockquote type=3D"cite">) at =
>>> ../src/runtime/common/RTLinker.m3:400<br></blockquote><blockquote =
>>> type=3D"cite">#20 0x0000000803766e00 in AddUnitI (m=3DInvalid C/C++  
>>> type =
>>> code 29 in symbol table.<br></blockquote><blockquote  
>>> type=3D"cite">) at =
>>> ../src/runtime/common/RTLinker.m3:114<br></blockquote><blockquote =
>>> type=3D"cite">#21 0x0000000803766e9e in AddUnit (b=3DInvalid C/C++  
>>> type =
>>> code 31 in symbol table.<br></blockquote><blockquote  
>>> type=3D"cite">) at =
>>> ../src/runtime/common/RTLinker.m3:123<br></blockquote><blockquote =
>>> type=3D"cite">---Type <return> to continue, or q  
>>> <return> to =
>>> quit---<br></blockquote><blockquote type=3D"cite">#22  
>>> 0x0000000000404194 =
>>> in main (argc=3D44, argv=3D0x7fffffffdde8, envp=3D0x7fffffffdf50)  
>>> at =
>>> _m3main.mc:4<br></blockquote><blockquote type=3D"cite">#23 =
>>> 0x00000000004040de in _start ()<br></blockquote><blockquote =
>>> type=3D"cite">(m3gdb) up 15<br></blockquote><blockquote  
>>> type=3D"cite">#15 =
>>> 0x000000080377d1bc in Fork =
>>> (closure=3D16_00000008064c8930)<br></blockquote><blockquote  
>>> type=3D"cite">=
>>>   at =
>>> ../src/thread/PTHREAD/ThreadPThread.m3:589<br></ 
>>> blockquote><blockquote =
>>> type=3D"cite">589  
>>>         WITH r =
>>> =3D pthread_mutex_lock_active() DO <*ASSERT r=3D0*> =
>>> END;<br></blockquote><blockquote type=3D"cite">Current language: =
>>>  auto; currently Modula-3<br></blockquote><blockquote =
>>> type=3D"cite">(m3gdb) print r<br></blockquote><blockquote  
>>> type=3D"cite">$1=
>>> =3D 11<br></blockquote><blockquote type=3D"cite">(m3gdb) =
>>> <br></blockquote><blockquote type=3D"cite"><br></ 
>>> blockquote><blockquote =
>>> type 
>>> = 
>>> 3D 
>>> "cite">=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
>>> = 
>>> 3D 
>>> = 
>>> 3D 
>>> = 
>>> 3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
>>> =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D<br></ 
>>> blockquote><blockquote =
>>> type=3D"cite"><br></blockquote><blockquote =
>>> type=3D"cite"><br></blockquote></div></blockquote></div><br></ 
>>> body></html>=
>>>
>>> --Apple-Mail-21--467118296--
>
>
>--Apple-Mail-24--465395183
>Content-Type: text/html;
>	charset=US-ASCII
>Content-Transfer-Encoding: quoted-printable
>
><html><body style=3D"word-wrap: break-word; -webkit-nbsp-mode: space; =
>-webkit-line-break: after-white-space; ">Do you know which one -lpthread =
>gives you on FreeBSD?<div><div apple-content-edited=3D"true"><span =
>class=3D"Apple-style-span" style=3D"border-collapse: separate; color: =
>rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: =
>normal; font-variant: normal; font-weight: normal; letter-spacing: =
>normal; line-height: normal; orphans: 2; text-align: auto; text-indent: =
>0px; text-transform: none; white-space: normal; widows: 2; word-spacing: =
>0px; -webkit-border-horizontal-spacing: 0px; =
>-webkit-border-vertical-spacing: 0px; =
>-webkit-text-decorations-in-effect: none; -webkit-text-size-adjust: =
>auto; -webkit-text-stroke-width: 0; "><div style=3D"word-wrap: =
>break-word; -webkit-nbsp-mode: space; -webkit-line-break: =
>after-white-space; "><span class=3D"Apple-style-span" =
>style=3D"border-collapse: separate; -webkit-border-horizontal-spacing: =
>0px; -webkit-border-vertical-spacing: 0px; color: rgb(0, 0, 0); =
>font-family: Helvetica; font-size: 12px; font-style: normal; =
>font-variant: normal; font-weight: normal; letter-spacing: normal; =
>line-height: normal; -webkit-text-decorations-in-effect: none; =
>text-indent: 0px; -webkit-text-size-adjust: auto; text-transform: none; =
>orphans: 2; white-space: normal; widows: 2; word-spacing: 0px; "><div =
>style=3D"word-wrap: break-word; -webkit-nbsp-mode: space; =
>-webkit-line-break: after-white-space; "><span class=3D"Apple-style-span" =
>style=3D"border-collapse: separate; -webkit-border-horizontal-spacing: =
>0px; -webkit-border-vertical-spacing: 0px; color: rgb(0, 0, 0); =
>font-family: Helvetica; font-size: 12px; font-style: normal; =
>font-variant: normal; font-weight: normal; letter-spacing: normal; =
>line-height: normal; -webkit-text-decorations-in-effect: none; =
>text-indent: 0px; -webkit-text-size-adjust: auto; text-transform: none; =
>orphans: 2; white-space: normal; widows: 2; word-spacing: 0px; "><span =
>class=3D"Apple-style-span" style=3D"border-collapse: separate; =
>-webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: =
>0px; color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; =
>font-style: normal; font-variant: normal; font-weight: normal; =
>letter-spacing: normal; line-height: normal; =
>-webkit-text-decorations-in-effect: none; text-indent: 0px; =
>-webkit-text-size-adjust: auto; text-transform: none; orphans: 2; =
>white-space: normal; widows: 2; word-spacing: 0px; "><span =
>class=3D"Apple-style-span" style=3D"border-collapse: separate; =
>-webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: =
>0px; color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; =
>font-style: normal; font-variant: normal; font-weight: normal; =
>letter-spacing: normal; line-height: normal; =
>-webkit-text-decorations-in-effect: none; text-indent: 0px; =
>-webkit-text-size-adjust: auto; text-transform: none; orphans: 2; =
>white-space: normal; widows: 2; word-spacing: 0px; "><span =
>class=3D"Apple-style-span" style=3D"border-collapse: separate; =
>-webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: =
>0px; color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; =
>font-style: normal; font-variant: normal; font-weight: normal; =
>letter-spacing: normal; line-height: normal; =
>-webkit-text-decorations-in-effect: none; text-indent: 0px; =
>-webkit-text-size-adjust: auto; text-transform: none; orphans: 2; =
>white-space: normal; widows: 2; word-spacing: 0px; "><span =
>class=3D"Apple-style-span" style=3D"border-collapse: separate; =
>-webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: =
>0px; color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; =
>font-style: normal; font-variant: normal; font-weight: normal; =
>letter-spacing: normal; line-height: normal; =
>-webkit-text-decorations-in-effect: none; text-indent: 0px; =
>-webkit-text-size-adjust: auto; text-transform: none; orphans: 2; =
>white-space: normal; widows: 2; word-spacing: 0px; "><span =
>class=3D"Apple-style-span" style=3D"border-collapse: separate; =
>-webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: =
>0px; color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; =
>font-style: normal; font-variant: normal; font-weight: normal; =
>letter-spacing: normal; line-height: normal; =
>-webkit-text-decorations-in-effect: none; text-indent: 0px; =
>-webkit-text-size-adjust: auto; text-transform: none; orphans: 2; =
>white-space: normal; widows: 2; word-spacing: 0px; "><span =
>class=3D"Apple-style-span" style=3D"border-collapse: separate; =
>-webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: =
>0px; color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; =
>font-style: normal; font-variant: normal; font-weight: normal; =
>letter-spacing: normal; line-height: normal; =
>-webkit-text-decorations-in-effect: none; text-indent: 0px; =
>-webkit-text-size-adjust: auto; text-transform: none; orphans: 2; =
>white-space: normal; widows: 2; word-spacing: 0px; "><span =
>class=3D"Apple-style-span" style=3D"border-collapse: separate; =
>-webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: =
>0px; color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; =
>font-style: normal; font-variant: normal; font-weight: normal; =
>letter-spacing: normal; line-height: normal; =
>-webkit-text-decorations-in-effect: none; text-indent: 0px; =
>-webkit-text-size-adjust: auto; text-transform: none; orphans: 2; =
>white-space: normal; widows: 2; word-spacing: 0px; "><div><span =
>class=3D"Apple-style-span" style=3D"font-size: medium;"><font =
>class=3D"Apple-style-span" color=3D"#0000FF" face=3D"'Gill =
>Sans'"><br></font></span></div></span></span></span></span></span></span><=
>/span></span></div></span></div></span> </div><br><div><div>On 31 Oct =
>2009, at 14:26, Mika Nystrom wrote:</div><br =
>class=3D"Apple-interchange-newline"><blockquote type=3D"cite"><div>Let's =
>see here we go:<br><br> =
>       libc.so.7 =3D> =
>/lib/libc.so.7 (0x804c4e000)<br><br> -> linking =
>mktisolator<br>generate _m3main.new<br>compare _m3main.new =
>_m3main.mc<br>rm _m3main.new<br>gcc -gstabs+ -m64 -fPIC -z now -z origin =
>-Bsymbolic -Wl,--fatal-warnings -Wl,--warn-common -Wl,-rpath,\$ORIGIN =
>-Wl,-rpath,\$ORIGIN/../lib -o mktisolator  _m3main.o MktIsolator.io =
>MktIsolator.mo Main.mo =
>-Wl,-rpath,/home/mika/t/mscheme/modula3scheme/AMD64_FREEBSD =
>-L/home/mika/t/mscheme/modula3scheme/AMD64_FREEBSD -lmodula3scheme =
>-Wl,-rpath,/home/mika/t/calarm/htmltable/AMD64_FREEBSD =
>-L/home/mika/t/calarm/htmltable/AMD64_FREEBSD -lhtmltable =
>-Wl,-rpath,/home/mika/t/calarm/postgresql/AMD64_FREEBSD =
>-L/home/mika/t/calarm/postgresql/AMD64_FREEBSD -lpostgresql =
>-Wl,-rpath,/usr/local/lib -L/usr/local/lib -lpq =
>-Wl,-rpath,/home/mika/t/calarm/twslib/twslogger/AMD64_FREEBSD =
>-L/home/mika/t/calarm/twslib/twslogger/AMD64_FREEBSD -ltwslogger =
>-Wl,-rpath,/home/mika/t/calarm/fastrw/AMD64_FREEBSD =
>-L/home/mika/t/calarm/fastrw/AMD64_FREEBSD -lfastrw =
>-Wl,-rpath,/home/mika/t/calarm/gw/AMD64_FREEBSD =
>-L/home/mika/t/calarm/gw/AMD64_FREEBSD -lgw =
>-Wl,-rpath,/usr/local/cm3/pkg/ui/AMD64_FREEBSD -L/usr/local/c<br> =
>m3/pkg/ui/AMD64_FREEBSD -lm3ui =
>-Wl,-rpath,/usr/local/cm3/pkg/X11R4/AMD64_FREEBSD =
>-L/usr/local/cm3/pkg/X11R4/AMD64_FREEBSD -lm3X11R4 =
>-Wl,-rpath,/home/mika/t/calarm/mktsim/AMD64_FREEBSD =
>-L/home/mika/t/calarm/mktsim/AMD64_FREEBSD -lmktsim =
>-Wl,-rpath,/home/mika/t/calarm/fix/fix42/AMD64_FREEBSD =
>-L/home/mika/t/calarm/fix/fix42/AMD64_FREEBSD -lfix42 =
>-Wl,-rpath,/home/mika/t/calarm/twslib/testtrade2/tradecore/AMD64_FREEBSD =
>-L/home/mika/t/calarm/twslib/testtrade2/tradecore/AMD64_FREEBSD =
>-ltradecore -Wl,-rpath,/home/mika/t/mscheme/AMD64_FREEBSD =
>-L/home/mika/t/mscheme/AMD64_FREEBSD -lmscheme =
>-Wl,-rpath,/home/mika/t/calarm/fix/fix41/AMD64_FREEBSD =
>-L/home/mika/t/calarm/fix/fix41/AMD64_FREEBSD -lfix41 =
>-Wl,-rpath,/home/mika/t/calarm/fix/fixcommon/AMD64_FREEBSD =
>-L/home/mika/t/calarm/fix/fixcommon/AMD64_FREEBSD -lfixcommon =
>-Wl,-rpath,/usr/local/cm3/pkg/parseparams/AMD64_FREEBSD =
>-L/usr/local/cm3/pkg/parseparams/AMD64_FREEBSD -lm3parseparams =
>-Wl,-rpath,/home/mika/t/mscheme/scheme-lib/AMD64_FREE<br> BSD =
>-L/home/mika/t/mscheme/scheme-lib/AMD64_FREEBSD -lscheme-lib =
>-Wl,-rpath,/home/mika/t/calarm/twslib/testtrade2/inventory/AMD64_FREEBSD =
>-L/home/mika/t/calarm/twslib/testtrade2/inventory/AMD64_FREEBSD =
>-linventory -Wl,-rpath,/home/mika/t/calarm/twslib/AMD64_FREEBSD =
>-L/home/mika/t/calarm/twslib/AMD64_FREEBSD -ltwslib =
>-Wl,-rpath,/home/mika/t/rdwr/AMD64_FREEBSD =
>-L/home/mika/t/rdwr/AMD64_FREEBSD -lrdwr =
>-Wl,-rpath,/home/mika/t/calarm/anova/AMD64_FREEBSD =
>-L/home/mika/t/calarm/anova/AMD64_FREEBSD -lanova =
>-Wl,-rpath,/home/mika/t/calarm/finlib/AMD64_FREEBSD =
>-L/home/mika/t/calarm/finlib/AMD64_FREEBSD -lfinlib =
>-Wl,-rpath,/home/mika/t/calarm/m3readline/AMD64_FREEBSD =
>-L/home/mika/t/calarm/m3readline/AMD64_FREEBSD -lm3readline =
>-Wl,-rpath,/home/mika/t/parserlib/parserlib/AMD64_FREEBSD =
>-L/home/mika/t/parserlib/parserlib/AMD64_FREEBSD -lparserlib =
>-Wl,-rpath,/home/mika/t/calarm/sx/AMD64_FREEBSD =
>-L/home/mika/t/calarm/sx/AMD64_FREEBSD -lsx =
>-Wl,-rpath,/home/mika/t/cit_util/AMD64_FREEBSD -L/home/<br> =
>mika/t/cit_util/AMD64_FREEBSD -lcit_util =
>-Wl,-rpath,/usr/local/cm3/pkg/netobj/AMD64_FREEBSD =
>-L/usr/local/cm3/pkg/netobj/AMD64_FREEBSD -lm3netobj =
>-Wl,-rpath,/home/mika/t/rdwrreset/AMD64_FREEBSD =
>-L/home/mika/t/rdwrreset/AMD64_FREEBSD -lrdwrreset =
>-Wl,-rpath,/home/mika/t/cit_common/AMD64_FREEBSD =
>-L/home/mika/t/cit_common/AMD64_FREEBSD -lcit_common =
>-Wl,-rpath,/usr/local/cm3/pkg/set/AMD64_FREEBSD =
>-L/usr/local/cm3/pkg/set/AMD64_FREEBSD -lset =
>-Wl,-rpath,/usr/local/cm3/pkg/libbuf/AMD64_FREEBSD =
>-L/usr/local/cm3/pkg/libbuf/AMD64_FREEBSD -llibbuf =
>-Wl,-rpath,/usr/local/cm3/pkg/patternmatching/AMD64_FREEBSD =
>-L/usr/local/cm3/pkg/patternmatching/AMD64_FREEBSD -lpatternmatching =
>-Wl,-rpath,/usr/local/cm3/pkg/tcp/AMD64_FREEBSD =
>-L/usr/local/cm3/pkg/tcp/AMD64_FREEBSD -lm3tcp =
>-Wl,-rpath,/usr/local/cm3/pkg/libm3/AMD64_FREEBSD =
>-L/usr/local/cm3/pkg/libm3/AMD64_FREEBSD -lm3 =
>-Wl,-rpath,/usr/local/cm3/pkg/m3core/AMD64_FREEBSD =
>-L/usr/local/cm3/pkg/m3core/AMD64_FREEBSD -lm3core -L/usr/X11R6/lib =
>-lXaw -lX<br> mu -lXext -lXt -lSM -lICE -lX11 -lm -lpthread<br>rm =
>m3make.args<br>cd .<br><br><br>Tony Hosking writes:<br><blockquote =
>type=3D"cite"><br></blockquote><blockquote =
>type=3D"cite">--Apple-Mail-21--467118296<br></blockquote><blockquote =
>type=3D"cite">Content-Type: text/plain;<br></blockquote><blockquote =
>type=3D"cite"><span class=3D"Apple-tab-span" style=3D"white-space:pre">	=
></span>charset=3DUS-ASCII;<br></blockquote><blockquote type=3D"cite"><span=
> class=3D"Apple-tab-span" style=3D"white-space:pre">	=
></span>format=3Dflowed;<br></blockquote><blockquote type=3D"cite"><span =
>class=3D"Apple-tab-span" style=3D"white-space:pre">	=
></span>delsp=3Dyes<br></blockquote><blockquote =
>type=3D"cite">Content-Transfer-Encoding: =
>7bit<br></blockquote><blockquote =
>type=3D"cite"><br></blockquote><blockquote type=3D"cite">Which pthread =
>library are you linking to?<br></blockquote><blockquote =
>type=3D"cite"><br></blockquote><blockquote type=3D"cite">On 31 Oct 2009, =
>at 12:15, Mika Nystrom wrote:<br></blockquote><blockquote =
>type=3D"cite"><br></blockquote><blockquote type=3D"cite"><blockquote =
>type=3D"cite"><br></blockquote></blockquote><blockquote =
>type=3D"cite"><blockquote type=3D"cite">More details about the =
>"catatonic" case.  It's pretty bad.  Even =
> <br></blockquote></blockquote><blockquote type=3D"cite"><blockquote =
>type=3D"cite">ctrl-\<br></blockquote></blockquote><blockquote =
>type=3D"cite"><blockquote type=3D"cite">won't wake it up properly. =
> Ctrl-\ is supposed to cause the program =
>to<br></blockquote></blockquote><blockquote type=3D"cite"><blockquote =
>type=3D"cite">abort and dump core.  It does nothing to my program =
>now!  And I think<br></blockquote></blockquote><blockquote =
>type=3D"cite"><blockquote type=3D"cite">I've "lost threads" before, =
>too.<br></blockquote></blockquote><blockquote type=3D"cite"><blockquote =
>type=3D"cite"><br></blockquote></blockquote><blockquote =
>type=3D"cite"><blockquote =
>type=3D"cite">Btw,<br></blockquote></blockquote><blockquote =
>type=3D"cite"><blockquote =
>type=3D"cite"><br></blockquote></blockquote><blockquote =
>type=3D"cite"><blockquote type=3D"cite">(90)ginger:~/t>uname =
>-a<br></blockquote></blockquote><blockquote type=3D"cite"><blockquote =
>type=3D"cite">FreeBSD ginger 7.2-RELEASE FreeBSD 7.2-RELEASE #0: Fri May =
> 1  <br></blockquote></blockquote><blockquote =
>type=3D"cite"><blockquote type=3D"cite">07:18:07 UTC 2009 =
>    <a =
>href=3D"mailto:root at driscoll.cse.buffalo.edu">root at driscoll.cse.buffalo.ed=
>u</a>:/usr/obj/usr/src/ <br></blockquote></blockquote><blockquote =
>type=3D"cite"><blockquote type=3D"cite">sys/GENERIC =
> amd64<br></blockquote></blockquote><blockquote =
>type=3D"cite"><blockquote =
>type=3D"cite"><br></blockquote></blockquote><blockquote =
>type=3D"cite"><blockquote type=3D"cite">I'm happy to help debug if =
>someone can give me some =
>pointers...<br></blockquote></blockquote><blockquote =
>type=3D"cite"><blockquote =
>type=3D"cite"><br></blockquote></blockquote><blockquote =
>type=3D"cite"><blockquote =
>type=3D"cite"><br></blockquote></blockquote><blockquote =
>type=3D"cite"><blockquote type=3D"cite"> =
>   Mika<br></blockquote></blockquote><blockquote =
>type=3D"cite"><blockquote =
>type=3D"cite"><br></blockquote></blockquote><blockquote =
>type=3D"cite"><blockquote =
>type=3D"cite">^\<br></blockquote></blockquote><blockquote =
>type=3D"cite"><blockquote type=3D"cite">Program received signal SIGQUIT, =
>Quit.<br></blockquote></blockquote><blockquote type=3D"cite"><blockquote =
>type=3D"cite">0x0000000804ca037c in sigsuspend () from =
>/lib/libc.so.7<br></blockquote></blockquote><blockquote =
>type=3D"cite"><blockquote type=3D"cite">(m3gdb) =
>cont<br></blockquote></blockquote><blockquote type=3D"cite"><blockquote =
>type=3D"cite">Continuing.<br></blockquote></blockquote><blockquote =
>type=3D"cite"><blockquote =
>type=3D"cite"><br></blockquote></blockquote><blockquote =
>type=3D"cite"><blockquote =
>type=3D"cite"><br></blockquote></blockquote><blockquote =
>type=3D"cite"><blockquote =
>type=3D"cite">***<br></blockquote></blockquote><blockquote =
>type=3D"cite"><blockquote type=3D"cite">*** runtime =
>error:<br></blockquote></blockquote><blockquote type=3D"cite"><blockquote =
>type=3D"cite">*** =
>   aborted<br></blockquote></blockquote><blockquote =
>type=3D"cite"><blockquote =
>type=3D"cite"><br></blockquote></blockquote><blockquote =
>type=3D"cite"><blockquote =
>type=3D"cite"><br></blockquote></blockquote><blockquote =
>type=3D"cite"><blockquote =
>type=3D"cite"><br></blockquote></blockquote><blockquote =
>type=3D"cite"><blockquote =
>type=3D"cite"><br></blockquote></blockquote><blockquote =
>type=3D"cite"><blockquote =
>type=3D"cite">^\<br></blockquote></blockquote><blockquote =
>type=3D"cite"><blockquote type=3D"cite">Program received signal SIGQUIT, =
>Quit.<br></blockquote></blockquote><blockquote type=3D"cite"><blockquote =
>type=3D"cite">0x0000000804ca037c in sigsuspend () from =
>/lib/libc.so.7<br></blockquote></blockquote><blockquote =
>type=3D"cite"><blockquote type=3D"cite">(m3gdb) =
>where<br></blockquote></blockquote><blockquote type=3D"cite"><blockquote =
>type=3D"cite">#0  0x0000000804ca037c in sigsuspend () from =
>/lib/libc.so.7<br></blockquote></blockquote><blockquote =
>type=3D"cite"><blockquote type=3D"cite">#1  0x0000000804b41d0a in =
>sigsuspend () from =
>/lib/libthr.so.3<br></blockquote></blockquote><blockquote =
>type=3D"cite"><blockquote type=3D"cite">#2  0x0000000803780da0 in =
>ThreadPThread__sigsuspend ()<br></blockquote></blockquote><blockquote =
>type=3D"cite"><blockquote type=3D"cite">   at =
>../src/thread/PTHREAD/ThreadPThreadC.c:117<br></blockquote></blockquote><b=
>lockquote type=3D"cite"><blockquote type=3D"cite">#3 =
> 0x000000080377ff6f in SignalHandler (sig=3DInvalid C/C++ type code =
> <br></blockquote></blockquote><blockquote type=3D"cite"><blockquote =
>type=3D"cite">28 in symbol =
>table.<br></blockquote></blockquote><blockquote type=3D"cite"><blockquote =
>type=3D"cite">) at =
>../src/thread/PTHREAD/ThreadPThread.m3:1261<br></blockquote></blockquote><=
>blockquote type=3D"cite"><blockquote type=3D"cite">#4  <signal =
>handler called><br></blockquote></blockquote><blockquote =
>type=3D"cite"><blockquote type=3D"cite">#5  0x0000000804b4829c in =
>__error () from =
>/lib/libthr.so.3<br></blockquote></blockquote><blockquote =
>type=3D"cite"><blockquote type=3D"cite">#6  0x0000000804b46365 in =
>pthread_cond_signal () from =
>/lib/libthr.so.3<br></blockquote></blockquote><blockquote =
>type=3D"cite"><blockquote type=3D"cite">#7  0x000000080377a85d in =
>XWait (self=3DInvalid C/C++ type code 26 in =
> <br></blockquote></blockquote><blockquote type=3D"cite"><blockquote =
>type=3D"cite">symbol table.<br></blockquote></blockquote><blockquote =
>type=3D"cite"><blockquote type=3D"cite">) at =
>../src/thread/PTHREAD/ThreadPThread.m3:227<br></blockquote></blockquote><b=
>lockquote type=3D"cite"><blockquote type=3D"cite">#8 =
> 0x000000080377b026 in Wait (m=3DInvalid C/C++ type code 26 in =
> <br></blockquote></blockquote><blockquote type=3D"cite"><blockquote =
>type=3D"cite">symbol table.<br></blockquote></blockquote><blockquote =
>type=3D"cite"><blockquote type=3D"cite">) at =
>../src/thread/PTHREAD/ThreadPThread.m3:278<br></blockquote></blockquote><b=
>lockquote type=3D"cite"><blockquote type=3D"cite">#9 =
> 0x000000080294a39c in WaitE (on=3DInvalid C/C++ type code 30 in =
> <br></blockquote></blockquote><blockquote type=3D"cite"><blockquote =
>type=3D"cite">symbol table.<br></blockquote></blockquote><blockquote =
>type=3D"cite"><blockquote type=3D"cite">) at =
>../src/SX.m3:217<br></blockquote></blockquote><blockquote =
>type=3D"cite"><blockquote type=3D"cite">#10 0x000000080294999a in Wait =
>(on=3DInvalid C/C++ type code 30 in =
> <br></blockquote></blockquote><blockquote type=3D"cite"><blockquote =
>type=3D"cite">symbol table.<br></blockquote></blockquote><blockquote =
>type=3D"cite"><blockquote type=3D"cite">) at =
>../src/SX.m3:152<br></blockquote></blockquote><blockquote =
>type=3D"cite"><blockquote type=3D"cite">#11 0x00000008011ae748 in =
>WaitLocked (t=3DInvalid C/C++ type code 26 =
> <br></blockquote></blockquote><blockquote type=3D"cite"><blockquote =
>type=3D"cite">in symbol table.<br></blockquote></blockquote><blockquote =
>type=3D"cite"><blockquote type=3D"cite">) at =
>../src/MktAsset.m3:117<br></blockquote></blockquote><blockquote =
>type=3D"cite"><blockquote type=3D"cite">#12 0x00000008011b4950 in =
>RecApply (cl=3DInvalid C/C++ type code 26 in =
> <br></blockquote></blockquote><blockquote type=3D"cite"><blockquote =
>type=3D"cite">symbol table.<br></blockquote></blockquote><blockquote =
>type=3D"cite"><blockquote type=3D"cite">) at =
>../src/MktPlace.m3:469<br></blockquote></blockquote><blockquote =
>type=3D"cite"><blockquote type=3D"cite">#13 0x000000080377cdf3 in =
>RunThread (me=3DInvalid C/C++ type code 29 =
> <br></blockquote></blockquote><blockquote type=3D"cite"><blockquote =
>type=3D"cite">in symbol table.<br></blockquote></blockquote><blockquote =
>type=3D"cite"><blockquote type=3D"cite">) at =
>../src/thread/PTHREAD/ThreadPThread.m3:547<br></blockquote></blockquote><b=
>lockquote type=3D"cite"><blockquote type=3D"cite">#14 0x000000080377ca6a =
>in ThreadBase (param=3DInvalid C/C++ type code =
> <br></blockquote></blockquote><blockquote type=3D"cite"><blockquote =
>type=3D"cite">35 in symbol =
>table.<br></blockquote></blockquote><blockquote type=3D"cite"><blockquote =
>type=3D"cite">) at =
>../src/thread/PTHREAD/ThreadPThread.m3:523<br></blockquote></blockquote><b=
>lockquote type=3D"cite"><blockquote type=3D"cite">#15 0x0000000804b3e4d1 =
>in pthread_getprio () from =
>/lib/libthr.so.3<br></blockquote></blockquote><blockquote =
>type=3D"cite"><blockquote type=3D"cite">#16 0x0000000000000000 in ?? =
>()<br></blockquote></blockquote><blockquote type=3D"cite"><blockquote =
>type=3D"cite">(m3gdb)<br></blockquote></blockquote><blockquote =
>type=3D"cite"><blockquote =
>type=3D"cite"><br></blockquote></blockquote><blockquote =
>type=3D"cite"><blockquote =
>type=3D"cite"><br></blockquote></blockquote><blockquote =
>type=3D"cite"><blockquote type=3D"cite">Mika Nystrom =
>writes:<br></blockquote></blockquote><blockquote type=3D"cite"><blockquote=
> type=3D"cite"><blockquote type=3D"cite">Hello =
>m3devel,<br></blockquote></blockquote></blockquote><blockquote =
>type=3D"cite"><blockquote type=3D"cite"><blockquote =
>type=3D"cite"><br></blockquote></blockquote></blockquote><blockquote =
>type=3D"cite"><blockquote type=3D"cite"><blockquote type=3D"cite">I'm =
>running into problems with the current release =
>candidate.<br></blockquote></blockquote></blockquote><blockquote =
>type=3D"cite"><blockquote type=3D"cite"><blockquote type=3D"cite">I'm =
>attaching a backtrace from one crash, but I think I also am =
> <br></blockquote></blockquote></blockquote><blockquote =
>type=3D"cite"><blockquote type=3D"cite"><blockquote =
>type=3D"cite">seeing<br></blockquote></blockquote></blockquote><blockquote=
> type=3D"cite"><blockquote type=3D"cite"><blockquote =
>type=3D"cite">deadlocks in the threading system---my application goes =
>catatonic.<br></blockquote></blockquote></blockquote><blockquote =
>type=3D"cite"><blockquote type=3D"cite"><blockquote type=3D"cite">Of =
>course it *is* possible it's a bug in my application, but it =
>works<br></blockquote></blockquote></blockquote><blockquote =
>type=3D"cite"><blockquote type=3D"cite"><blockquote type=3D"cite">on PM3 =
>and on CM3 on =
>PPC_DARWIN.<br></blockquote></blockquote></blockquote><blockquote =
>type=3D"cite"><blockquote type=3D"cite"><blockquote =
>type=3D"cite"><br></blockquote></blockquote></blockquote><blockquote =
>type=3D"cite"><blockquote type=3D"cite"><blockquote type=3D"cite">Finally =
>I'm still concerned about threading performance but in the =
> <br></blockquote></blockquote></blockquote><blockquote =
>type=3D"cite"><blockquote type=3D"cite"><blockquote =
>type=3D"cite">light<br></blockquote></blockquote></blockquote><blockquote =
>type=3D"cite"><blockquote type=3D"cite"><blockquote type=3D"cite">of the =
>bugs it's hard to say much about it yet, I =
>think...<br></blockquote></blockquote></blockquote><blockquote =
>type=3D"cite"><blockquote type=3D"cite"><blockquote =
>type=3D"cite"><br></blockquote></blockquote></blockquote><blockquote =
>type=3D"cite"><blockquote type=3D"cite"><blockquote type=3D"cite">(The =
>program in question is a highly multithreaded stock =
>market<br></blockquote></blockquote></blockquote><blockquote =
>type=3D"cite"><blockquote type=3D"cite"><blockquote =
>type=3D"cite">simulator.)<br></blockquote></blockquote></blockquote><block=
>quote type=3D"cite"><blockquote type=3D"cite"><blockquote =
>type=3D"cite"><br></blockquote></blockquote></blockquote><blockquote =
>type=3D"cite"><blockquote type=3D"cite"><blockquote type=3D"cite"> =
>  Mika<br></blockquote></blockquote></blockquote><blockquote =
>type=3D"cite"><blockquote type=3D"cite"><blockquote =
>type=3D"cite"><br></blockquote></blockquote></blockquote><blockquote =
>type=3D"cite"><blockquote type=3D"cite"><blockquote =
>type=3D"cite">=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
>=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
>=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D<br></blockquote></blockquote=
>></blockquote><blockquote type=3D"cite"><blockquote =
>type=3D"cite"><blockquote =
>type=3D"cite"><br></blockquote></blockquote></blockquote><blockquote =
>type=3D"cite"><blockquote type=3D"cite"><blockquote =
>type=3D"cite">***<br></blockquote></blockquote></blockquote><blockquote =
>type=3D"cite"><blockquote type=3D"cite"><blockquote type=3D"cite">*** =
>runtime error:<br></blockquote></blockquote></blockquote><blockquote =
>type=3D"cite"><blockquote type=3D"cite"><blockquote type=3D"cite">*** =
>   <*ASSERT*> =
>failed.<br></blockquote></blockquote></blockquote><blockquote =
>type=3D"cite"><blockquote type=3D"cite"><blockquote type=3D"cite">*** =
>   file "../src/thread/PTHREAD/ThreadPThread.m3", line =
>589<br></blockquote></blockquote></blockquote><blockquote =
>type=3D"cite"><blockquote type=3D"cite"><blockquote =
>type=3D"cite">***<br></blockquote></blockquote></blockquote><blockquote =
>type=3D"cite"><blockquote type=3D"cite"><blockquote =
>type=3D"cite"><br></blockquote></blockquote></blockquote><blockquote =
>type=3D"cite"><blockquote type=3D"cite"><blockquote =
>type=3D"cite"><br></blockquote></blockquote></blockquote><blockquote =
>type=3D"cite"><blockquote type=3D"cite"><blockquote type=3D"cite">Program =
>received signal SIGABRT, =
>Aborted.<br></blockquote></blockquote></blockquote><blockquote =
>type=3D"cite"><blockquote type=3D"cite"><blockquote =
>type=3D"cite">0x0000000804c9fa9c in thr_kill () from =
>/lib/libc.so.7<br></blockquote></blockquote></blockquote><blockquote =
>type=3D"cite"><blockquote type=3D"cite"><blockquote type=3D"cite">(m3gdb) =
>show args<br></blockquote></blockquote></blockquote><blockquote =
>type=3D"cite"><blockquote type=3D"cite"><blockquote type=3D"cite">Argument=
> list to give program being debugged when it is started is =
> <br></blockquote></blockquote></blockquote><blockquote =
>type=3D"cite"><blockquote type=3D"cite"><blockquote =
>type=3D"cite">"@M3debugtrace=3Dmktsim.out -tz America/New_York =
>-bugbehavior None - =
><br></blockquote></blockquote></blockquote><blockquote =
>type=3D"cite"><blockquote type=3D"cite"><blockquote =
>type=3D"cite">symbology ric -symbology =
>tws<br></blockquote></blockquote></blockquote><blockquote =
>type=3D"cite"><blockquote type=3D"cite"><blockquote type=3D"cite">-replay =
>mktisolator090910.ticks 2009-09-10 at 13:30 -to =
> <br></blockquote></blockquote></blockquote><blockquote =
>type=3D"cite"><blockquote type=3D"cite"><blockquote =
>type=3D"cite">2009-09-10 at 15:59 -port 7001 -dp 0.05 7003 -dp 0.10 7005 =
>-dp 0.15  <br></blockquote></blockquote></blockquote><blockquote =
>type=3D"cite"><blockquote type=3D"cite"><blockquote type=3D"cite">7007 =
>-dp 0.20 7009 -dp 0.25 7011 -dp =
>0.30<br></blockquote></blockquote></blockquote><blockquote =
>type=3D"cite"><blockquote type=3D"cite"><blockquote type=3D"cite">7013 =
>-sync 60 -unsolicitedfills 0.5 -cp 0.5 -xtimeport 7200 =
> <br></blockquote></blockquote></blockquote><blockquote =
>type=3D"cite"><blockquote type=3D"cite"><blockquote =
>type=3D"cite">isolate90.src".<br></blockquote></blockquote></blockquote><b=
>lockquote type=3D"cite"><blockquote type=3D"cite"><blockquote =
>type=3D"cite">(m3gdb) =
>where<br></blockquote></blockquote></blockquote><blockquote =
>type=3D"cite"><blockquote type=3D"cite"><blockquote type=3D"cite">#0 =
> 0x0000000804c9fa9c in thr_kill () from =
>/lib/libc.so.7<br></blockquote></blockquote></blockquote><blockquote =
>type=3D"cite"><blockquote type=3D"cite"><blockquote type=3D"cite">#1 =
> 0x0000000804d2ef8b in abort () from =
>/lib/libc.so.7<br></blockquote></blockquote></blockquote><blockquote =
>type=3D"cite"><blockquote type=3D"cite"><blockquote type=3D"cite">#2 =
> 0x0000000803777bf7 in Crash () at =
>../src/runtime/POSIX/RTOS.m3:20<br></blockquote></blockquote></blockquote>=
><blockquote type=3D"cite"><blockquote type=3D"cite"><blockquote =
>type=3D"cite">#3  0x000000080376b615 in Crash (msg=3DInvalid C/C++ =
>type code 26 in =
> <br></blockquote></blockquote></blockquote><blockquote =
>type=3D"cite"><blockquote type=3D"cite"><blockquote type=3D"cite">symbol =
>table.<br></blockquote></blockquote></blockquote><blockquote =
>type=3D"cite"><blockquote type=3D"cite"><blockquote type=3D"cite">) at =
>../src/runtime/common/RTProcess.m3:65<br></blockquote></blockquote></block=
>quote><blockquote type=3D"cite"><blockquote type=3D"cite"><blockquote =
>type=3D"cite">#4  0x0000000803768ab2 in EndError (crash=3DInvalid =
>C/C++ type code =
> <br></blockquote></blockquote></blockquote><blockquote =
>type=3D"cite"><blockquote type=3D"cite"><blockquote type=3D"cite">36 in =
>symbol table.<br></blockquote></blockquote></blockquote><blockquote =
>type=3D"cite"><blockquote type=3D"cite"><blockquote type=3D"cite">) at =
>../src/runtime/common/RTError.m3:118<br></blockquote></blockquote></blockq=
>uote><blockquote type=3D"cite"><blockquote type=3D"cite"><blockquote =
>type=3D"cite">#5  0x00000008037687aa in MsgS (file=3DInvalid C/C++ =
>type code 35 in =
> <br></blockquote></blockquote></blockquote><blockquote =
>type=3D"cite"><blockquote type=3D"cite"><blockquote type=3D"cite">symbol =
>table.<br></blockquote></blockquote></blockquote><blockquote =
>type=3D"cite"><blockquote type=3D"cite"><blockquote type=3D"cite">) at =
>../src/runtime/common/RTError.m3:40<br></blockquote></blockquote></blockqu=
>ote><blockquote type=3D"cite"><blockquote type=3D"cite"><blockquote =
>type=3D"cite">#6  0x0000000803768f85 in Crash (a=3DInvalid C/C++ =
>type code 30 in =
> <br></blockquote></blockquote></blockquote><blockquote =
>type=3D"cite"><blockquote type=3D"cite"><blockquote type=3D"cite">symbol =
>table.<br></blockquote></blockquote></blockquote><blockquote =
>type=3D"cite"><blockquote type=3D"cite"><blockquote type=3D"cite">) at =
>../src/runtime/common/RTException.m3:79<br></blockquote></blockquote></blo=
>ckquote><blockquote type=3D"cite"><blockquote type=3D"cite"><blockquote =
>type=3D"cite">#7  0x0000000803768c3c in DefaultBackstop (a=3DInvalid =
>C/C++ type  <br></blockquote></blockquote></blockquote><blockquote =
>type=3D"cite"><blockquote type=3D"cite"><blockquote type=3D"cite">code =
>30 in symbol =
>table.<br></blockquote></blockquote></blockquote><blockquote =
>type=3D"cite"><blockquote type=3D"cite"><blockquote type=3D"cite">) at =
>../src/runtime/common/RTException.m3:39<br></blockquote></blockquote></blo=
>ckquote><blockquote type=3D"cite"><blockquote type=3D"cite"><blockquote =
>type=3D"cite">#8  0x0000000803768b6e in InvokeBackstop (a=3DInvalid =
>C/C++ type code =
> <br></blockquote></blockquote></blockquote><blockquote =
>type=3D"cite"><blockquote type=3D"cite"><blockquote type=3D"cite">30 in =
>symbol table.<br></blockquote></blockquote></blockquote><blockquote =
>type=3D"cite"><blockquote type=3D"cite"><blockquote type=3D"cite">) at =
>../src/runtime/common/RTException.m3:25<br></blockquote></blockquote></blo=
>ckquote><blockquote type=3D"cite"><blockquote type=3D"cite"><blockquote =
>type=3D"cite">#9  0x0000000803778eab in Raise (act=3DInvalid C/C++ =
>type code 30 in =
> <br></blockquote></blockquote></blockquote><blockquote =
>type=3D"cite"><blockquote type=3D"cite"><blockquote type=3D"cite">symbol =
>table.<br></blockquote></blockquote></blockquote><blockquote =
>type=3D"cite"><blockquote type=3D"cite"><blockquote type=3D"cite">) at =
>../src/runtime/ex_frame/RTExFrame.m3:29<br></blockquote></blockquote></blo=
>ckquote><blockquote type=3D"cite"><blockquote type=3D"cite"><blockquote =
>type=3D"cite">#10 0x0000000803768cee in DefaultBackstop (a=3DInvalid =
>C/C++ type  <br></blockquote></blockquote></blockquote><blockquote =
>type=3D"cite"><blockquote type=3D"cite"><blockquote type=3D"cite">code =
>30 in symbol =
>table.<br></blockquote></blockquote></blockquote><blockquote =
>type=3D"cite"><blockquote type=3D"cite"><blockquote type=3D"cite">) at =
>../src/runtime/common/RTException.m3:47<br></blockquote></blockquote></blo=
>ckquote><blockquote type=3D"cite"><blockquote type=3D"cite"><blockquote =
>type=3D"cite">#11 0x0000000803768b6e in InvokeBackstop (a=3DInvalid =
>C/C++ type code =
> <br></blockquote></blockquote></blockquote><blockquote =
>type=3D"cite"><blockquote type=3D"cite"><blockquote type=3D"cite">30 in =
>symbol table.<br></blockquote></blockquote></blockquote><blockquote =
>type=3D"cite"><blockquote type=3D"cite"><blockquote type=3D"cite">) at =
>../src/runtime/common/RTException.m3:25<br></blockquote></blockquote></blo=
>ckquote><blockquote type=3D"cite"><blockquote type=3D"cite"><blockquote =
>type=3D"cite">#12 0x0000000803778eab in Raise (act=3DInvalid C/C++ type =
>code 30 in  <br></blockquote></blockquote></blockquote><blockquote =
>type=3D"cite"><blockquote type=3D"cite"><blockquote type=3D"cite">symbol =
>table.<br></blockquote></blockquote></blockquote><blockquote =
>type=3D"cite"><blockquote type=3D"cite"><blockquote type=3D"cite">) at =
>../src/runtime/ex_frame/RTExFrame.m3:29<br></blockquote></blockquote></blo=
>ckquote><blockquote type=3D"cite"><blockquote type=3D"cite"><blockquote =
>type=3D"cite">#13 0x0000000803750241 in ReportFault (module=3DInvalid =
>C/C++ type  <br></blockquote></blockquote></blockquote><blockquote =
>type=3D"cite"><blockquote type=3D"cite"><blockquote type=3D"cite">code =
>35 in symbol =
>table.<br></blockquote></blockquote></blockquote><blockquote =
>type=3D"cite"><blockquote type=3D"cite"><blockquote type=3D"cite">) at =
>../src/runtime/common/RTHooks.m3:110<br></blockquote></blockquote></blockq=
>uote><blockquote type=3D"cite"><blockquote type=3D"cite"><blockquote =
>type=3D"cite">#14 0x0000000803780acf in _m3_fault (arg=3DInvalid C/C++ =
>type code 39 =
> <br></blockquote></blockquote></blockquote><blockquote =
>type=3D"cite"><blockquote type=3D"cite"><blockquote type=3D"cite">in =
>symbol table.<br></blockquote></blockquote></blockquote><blockquote =
>type=3D"cite"><blockquote type=3D"cite"><blockquote =
>type=3D"cite">)<br></blockquote></blockquote></blockquote><blockquote =
>type=3D"cite"><blockquote type=3D"cite"><blockquote type=3D"cite"> from =
>/usr/local/cm3/pkg/m3core/AMD64_FREEBSD/libm3core.so.5<br></blockquote></b=
>lockquote></blockquote><blockquote type=3D"cite"><blockquote =
>type=3D"cite"><blockquote type=3D"cite">#15 0x000000080377d1bc in Fork =
>(closure=3DInvalid C/C++ type code 26 =
> <br></blockquote></blockquote></blockquote><blockquote =
>type=3D"cite"><blockquote type=3D"cite"><blockquote type=3D"cite">in =
>symbol table.<br></blockquote></blockquote></blockquote><blockquote =
>type=3D"cite"><blockquote type=3D"cite"><blockquote type=3D"cite">) at =
>../src/thread/PTHREAD/ThreadPThread.m3:589<br></blockquote></blockquote></=
>blockquote><blockquote type=3D"cite"><blockquote type=3D"cite"><blockquote=
> type=3D"cite">#16 0x00000008011b1651 in AddAsset (t=3DInvalid C/C++ =
>type code 26 in =
> <br></blockquote></blockquote></blockquote><blockquote =
>type=3D"cite"><blockquote type=3D"cite"><blockquote type=3D"cite">symbol =
>table.<br></blockquote></blockquote></blockquote><blockquote =
>type=3D"cite"><blockquote type=3D"cite"><blockquote type=3D"cite">) at =
>../src/MktPlace.m3:116<br></blockquote></blockquote></blockquote><blockquo=
>te type=3D"cite"><blockquote type=3D"cite"><blockquote type=3D"cite">#17 =
>0x00000000004085c6 in Init (t=3DInvalid C/C++ type code 26 in =
> <br></blockquote></blockquote></blockquote><blockquote =
>type=3D"cite"><blockquote type=3D"cite"><blockquote type=3D"cite">symbol =
>table.<br></blockquote></blockquote></blockquote><blockquote =
>type=3D"cite"><blockquote type=3D"cite"><blockquote type=3D"cite">) at =
>../src/MktIsolator.m3:514<br></blockquote></blockquote></blockquote><block=
>quote type=3D"cite"><blockquote type=3D"cite"><blockquote =
>type=3D"cite">#18 0x00000000004106af in Main (mode=3DInvalid C/C++ type =
>code 39 in  <br></blockquote></blockquote></blockquote><blockquote =
>type=3D"cite"><blockquote type=3D"cite"><blockquote type=3D"cite">symbol =
>table.<br></blockquote></blockquote></blockquote><blockquote =
>type=3D"cite"><blockquote type=3D"cite"><blockquote type=3D"cite">) at =
>../src/Main.m3:734<br></blockquote></blockquote></blockquote><blockquote =
>type=3D"cite"><blockquote type=3D"cite"><blockquote type=3D"cite">#19 =
>0x0000000803767c19 in RunMainBody (m=3DInvalid C/C++ type code 29 =
> <br></blockquote></blockquote></blockquote><blockquote =
>type=3D"cite"><blockquote type=3D"cite"><blockquote type=3D"cite">in =
>symbol table.<br></blockquote></blockquote></blockquote><blockquote =
>type=3D"cite"><blockquote type=3D"cite"><blockquote type=3D"cite">) at =
>../src/runtime/common/RTLinker.m3:400<br></blockquote></blockquote></block=
>quote><blockquote type=3D"cite"><blockquote type=3D"cite"><blockquote =
>type=3D"cite">#20 0x0000000803766e00 in AddUnitI (m=3DInvalid C/C++ type =
>code 29 in  <br></blockquote></blockquote></blockquote><blockquote =
>type=3D"cite"><blockquote type=3D"cite"><blockquote type=3D"cite">symbol =
>table.<br></blockquote></blockquote></blockquote><blockquote =
>type=3D"cite"><blockquote type=3D"cite"><blockquote type=3D"cite">) at =
>../src/runtime/common/RTLinker.m3:114<br></blockquote></blockquote></block=
>quote><blockquote type=3D"cite"><blockquote type=3D"cite"><blockquote =
>type=3D"cite">#21 0x0000000803766e9e in AddUnit (b=3DInvalid C/C++ type =
>code 31 in  <br></blockquote></blockquote></blockquote><blockquote =
>type=3D"cite"><blockquote type=3D"cite"><blockquote type=3D"cite">symbol =
>table.<br></blockquote></blockquote></blockquote><blockquote =
>type=3D"cite"><blockquote type=3D"cite"><blockquote type=3D"cite">) at =
>../src/runtime/common/RTLinker.m3:123<br></blockquote></blockquote></block=
>quote><blockquote type=3D"cite"><blockquote type=3D"cite"><blockquote =
>type=3D"cite">---Type <return> to continue, or q <return> to =
>quit---<br></blockquote></blockquote></blockquote><blockquote =
>type=3D"cite"><blockquote type=3D"cite"><blockquote type=3D"cite">#22 =
>0x0000000000404194 in main (argc=3D44, argv=3D0x7fffffffdde8, =
> <br></blockquote></blockquote></blockquote><blockquote =
>type=3D"cite"><blockquote type=3D"cite"><blockquote =
>type=3D"cite">envp=3D0x7fffffffdf50) at =
>_m3main.mc:4<br></blockquote></blockquote></blockquote><blockquote =
>type=3D"cite"><blockquote type=3D"cite"><blockquote type=3D"cite">#23 =
>0x00000000004040de in _start =
>()<br></blockquote></blockquote></blockquote><blockquote =
>type=3D"cite"><blockquote type=3D"cite"><blockquote type=3D"cite">(m3gdb) =
>up 15<br></blockquote></blockquote></blockquote><blockquote =
>type=3D"cite"><blockquote type=3D"cite"><blockquote type=3D"cite">#15 =
>0x000000080377d1bc in Fork =
>(closure=3D16_00000008064c8930)<br></blockquote></blockquote></blockquote>=
><blockquote type=3D"cite"><blockquote type=3D"cite"><blockquote =
>type=3D"cite">  at =
>../src/thread/PTHREAD/ThreadPThread.m3:589<br></blockquote></blockquote></=
>blockquote><blockquote type=3D"cite"><blockquote type=3D"cite"><blockquote=
> type=3D"cite">589         WITH =
>r =3D pthread_mutex_lock_active() DO <*ASSERT r=3D0*> =
> <br></blockquote></blockquote></blockquote><blockquote =
>type=3D"cite"><blockquote type=3D"cite"><blockquote =
>type=3D"cite">END;<br></blockquote></blockquote></blockquote><blockquote =
>type=3D"cite"><blockquote type=3D"cite"><blockquote type=3D"cite">Current =
>language:  auto; currently =
>Modula-3<br></blockquote></blockquote></blockquote><blockquote =
>type=3D"cite"><blockquote type=3D"cite"><blockquote type=3D"cite">(m3gdb) =
>print r<br></blockquote></blockquote></blockquote><blockquote =
>type=3D"cite"><blockquote type=3D"cite"><blockquote type=3D"cite">$1 =3D =
>11<br></blockquote></blockquote></blockquote><blockquote =
>type=3D"cite"><blockquote type=3D"cite"><blockquote =
>type=3D"cite">(m3gdb)<br></blockquote></blockquote></blockquote><blockquot=
>e type=3D"cite"><blockquote type=3D"cite"><blockquote =
>type=3D"cite"><br></blockquote></blockquote></blockquote><blockquote =
>type=3D"cite"><blockquote type=3D"cite"><blockquote =
>type=3D"cite">=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
>=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
>=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D<br></blockquote></blockquote=
>></blockquote><blockquote type=3D"cite"><blockquote =
>type=3D"cite"><blockquote =
>type=3D"cite"><br></blockquote></blockquote></blockquote><blockquote =
>type=3D"cite"><blockquote type=3D"cite"><blockquote =
>type=3D"cite"><br></blockquote></blockquote></blockquote><blockquote =
>type=3D"cite"><br></blockquote><blockquote =
>type=3D"cite"><br></blockquote><blockquote =
>type=3D"cite">--Apple-Mail-21--467118296<br></blockquote><blockquote =
>type=3D"cite">Content-Type: text/html;<br></blockquote><blockquote =
>type=3D"cite"><span class=3D"Apple-tab-span" style=3D"white-space:pre">	=
></span>charset=3DUS-ASCII<br></blockquote><blockquote =
>type=3D"cite">Content-Transfer-Encoding: =
>quoted-printable<br></blockquote><blockquote =
>type=3D"cite"><br></blockquote><blockquote =
>type=3D"cite"><html><body style=3D3D"word-wrap: break-word; =
>-webkit-nbsp-mode: space; =3D<br></blockquote><blockquote =
>type=3D"cite">-webkit-line-break: after-white-space; ">Which pthread =
>library are you =3D<br></blockquote><blockquote type=3D"cite">linking =
>to?<br><div apple-content-edited=3D3D"true"> <span =
>=3D<br></blockquote><blockquote type=3D"cite">class=3D3D"Apple-style-span"=
> style=3D3D"border-collapse: separate; color: =
>=3D<br></blockquote><blockquote type=3D"cite">rgb(0, 0, 0); font-family: =
>Helvetica; font-size: 12px; font-style: =3D<br></blockquote><blockquote =
>type=3D"cite">normal; font-variant: normal; font-weight: normal; =
>letter-spacing: =3D<br></blockquote><blockquote type=3D"cite">normal; =
>line-height: normal; orphans: 2; text-align: auto; text-indent: =
>=3D<br></blockquote><blockquote type=3D"cite">0px; text-transform: none; =
>white-space: normal; widows: 2; word-spacing: =
>=3D<br></blockquote><blockquote type=3D"cite">0px; =
>-webkit-border-horizontal-spacing: 0px; =3D<br></blockquote><blockquote =
>type=3D"cite">-webkit-border-vertical-spacing: 0px; =
>=3D<br></blockquote><blockquote =
>type=3D"cite">-webkit-text-decorations-in-effect: none; =
>-webkit-text-size-adjust: =3D<br></blockquote><blockquote =
>type=3D"cite">auto; -webkit-text-stroke-width: 0; "><div =
>style=3D3D"word-wrap: =3D<br></blockquote><blockquote =
>type=3D"cite">break-word; -webkit-nbsp-mode: space; -webkit-line-break: =
>=3D<br></blockquote><blockquote type=3D"cite">after-white-space; =
>"><span class=3D3D"Apple-style-span" =3D<br></blockquote><blockquote=
> type=3D"cite">style=3D3D"border-collapse: separate; =
>-webkit-border-horizontal-spacing: =3D<br></blockquote><blockquote =
>type=3D"cite">0px; -webkit-border-vertical-spacing: 0px; color: rgb(0, =
>0, 0); =3D<br></blockquote><blockquote type=3D"cite">font-family: =
>Helvetica; font-size: 12px; font-style: normal; =
>=3D<br></blockquote><blockquote type=3D"cite">font-variant: normal; =
>font-weight: normal; letter-spacing: normal; =
>=3D<br></blockquote><blockquote type=3D"cite">line-height: normal; =
>-webkit-text-decorations-in-effect: none; =3D<br></blockquote><blockquote =
>type=3D"cite">text-indent: 0px; -webkit-text-size-adjust: auto; =
>text-transform: none; =3D<br></blockquote><blockquote =
>type=3D"cite">orphans: 2; white-space: normal; widows: 2; word-spacing: =
>0px; "><div =3D<br></blockquote><blockquote =
>type=3D"cite">style=3D3D"word-wrap: break-word; -webkit-nbsp-mode: =
>space; =3D<br></blockquote><blockquote type=3D"cite">-webkit-line-break: =
>after-white-space; "><span class=3D3D"Apple-style-span" =
>=3D<br></blockquote><blockquote type=3D"cite">style=3D3D"border-collapse: =
>separate; -webkit-border-horizontal-spacing: =
>=3D<br></blockquote><blockquote type=3D"cite">0px; =
>-webkit-border-vertical-spacing: 0px; color: rgb(0, 0, 0); =
>=3D<br></blockquote><blockquote type=3D"cite">font-family: Helvetica; =
>font-size: 12px; font-style: normal; =3D<br></blockquote><blockquote =
>type=3D"cite">font-variant: normal; font-weight: normal; letter-spacing: =
>normal; =3D<br></blockquote><blockquote type=3D"cite">line-height: =
>normal; -webkit-text-decorations-in-effect: none; =
>=3D<br></blockquote><blockquote type=3D"cite">text-indent: 0px; =
>-webkit-text-size-adjust: auto; text-transform: none; =
>=3D<br></blockquote><blockquote type=3D"cite">orphans: 2; white-space: =
>normal; widows: 2; word-spacing: 0px; "><span =
>=3D<br></blockquote><blockquote type=3D"cite">class=3D3D"Apple-style-span"=
> style=3D3D"border-collapse: separate; =3D<br></blockquote><blockquote =
>type=3D"cite">-webkit-border-horizontal-spacing: 0px; =
>-webkit-border-vertical-spacing: =3D<br></blockquote><blockquote =
>type=3D"cite">0px; color: rgb(0, 0, 0); font-family: Helvetica; =
>font-size: 12px; =3D<br></blockquote><blockquote type=3D"cite">font-style:=
> normal; font-variant: normal; font-weight: normal; =
>=3D<br></blockquote><blockquote type=3D"cite">letter-spacing: normal; =
>line-height: normal; =3D<br></blockquote><blockquote =
>type=3D"cite">-webkit-text-decorations-in-effect: none; text-indent: =
>0px; =3D<br></blockquote><blockquote =
>type=3D"cite">-webkit-text-size-adjust: auto; text-transform: none; =
>orphans: 2; =3D<br></blockquote><blockquote type=3D"cite">white-space: =
>normal; widows: 2; word-spacing: 0px; "><span =
>=3D<br></blockquote><blockquote type=3D"cite">class=3D3D"Apple-style-span"=
> style=3D3D"border-collapse: separate; =3D<br></blockquote><blockquote =
>type=3D"cite">-webkit-border-horizontal-spacing: 0px; =
>-webkit-border-vertical-spacing: =3D<br></blockquote><blockquote =
>type=3D"cite">0px; color: rgb(0, 0, 0); font-family: Helvetica; =
>font-size: 12px; =3D<br></blockquote><blockquote type=3D"cite">font-style:=
> normal; font-variant: normal; font-weight: normal; =
>=3D<br></blockquote><blockquote type=3D"cite">letter-spacing: normal; =
>line-height: normal; =3D<br></blockquote><blockquote =
>type=3D"cite">-webkit-text-decorations-in-effect: none; text-indent: =
>0px; =3D<br></blockquote><blockquote =
>type=3D"cite">-webkit-text-size-adjust: auto; text-transform: none; =
>orphans: 2; =3D<br></blockquote><blockquote type=3D"cite">white-space: =
>normal; widows: 2; word-spacing: 0px; "><span =
>=3D<br></blockquote><blockquote type=3D"cite">class=3D3D"Apple-style-span"=
> style=3D3D"border-collapse: separate; =3D<br></blockquote><blockquote =
>type=3D"cite">-webkit-border-horizontal-spacing: 0px; =
>-webkit-border-vertical-spacing: =3D<br></blockquote><blockquote =
>type=3D"cite">0px; color: rgb(0, 0, 0); font-family: Helvetica; =
>font-size: 12px; =3D<br></blockquote><blockquote type=3D"cite">font-style:=
> normal; font-variant: normal; font-weight: normal; =
>=3D<br></blockquote><blockquote type=3D"cite">letter-spacing: normal; =
>line-height: normal; =3D<br></blockquote><blockquote =
>type=3D"cite">-webkit-text-decorations-in-effect: none; text-indent: =
>0px; =3D<br></blockquote><blockquote =
>type=3D"cite">-webkit-text-size-adjust: auto; text-transform: none; =
>orphans: 2; =3D<br></blockquote><blockquote type=3D"cite">white-space: =
>normal; widows: 2; word-spacing: 0px; "><span =
>=3D<br></blockquote><blockquote type=3D"cite">class=3D3D"Apple-style-span"=
> style=3D3D"border-collapse: separate; =3D<br></blockquote><blockquote =
>type=3D"cite">-webkit-border-horizontal-spacing: 0px; =
>-webkit-border-vertical-spacing: =3D<br></blockquote><blockquote =
>type=3D"cite">0px; color: rgb(0, 0, 0); font-family: Helvetica; =
>font-size: 12px; =3D<br></blockquote><blockquote type=3D"cite">font-style:=
> normal; font-variant: normal; font-weight: normal; =
>=3D<br></blockquote><blockquote type=3D"cite">letter-spacing: normal; =
>line-height: normal; =3D<br></blockquote><blockquote =
>type=3D"cite">-webkit-text-decorations-in-effect: none; text-indent: =
>0px; =3D<br></blockquote><blockquote =
>type=3D"cite">-webkit-text-size-adjust: auto; text-transform: none; =
>orphans: 2; =3D<br></blockquote><blockquote type=3D"cite">white-space: =
>normal; widows: 2; word-spacing: 0px; "><span =
>=3D<br></blockquote><blockquote type=3D"cite">class=3D3D"Apple-style-span"=
> style=3D3D"border-collapse: separate; =3D<br></blockquote><blockquote =
>type=3D"cite">-webkit-border-horizontal-spacing: 0px; =
>-webkit-border-vertical-spacing: =3D<br></blockquote><blockquote =
>type=3D"cite">0px; color: rgb(0, 0, 0); font-family: Helvetica; =
>font-size: 12px; =3D<br></blockquote><blockquote type=3D"cite">font-style:=
> normal; font-variant: normal; font-weight: normal; =
>=3D<br></blockquote><blockquote type=3D"cite">letter-spacing: normal; =
>line-height: normal; =3D<br></blockquote><blockquote =
>type=3D"cite">-webkit-text-decorations-in-effect: none; text-indent: =
>0px; =3D<br></blockquote><blockquote =
>type=3D"cite">-webkit-text-size-adjust: auto; text-transform: none; =
>orphans: 2; =3D<br></blockquote><blockquote type=3D"cite">white-space: =
>normal; widows: 2; word-spacing: 0px; "><span =
>=3D<br></blockquote><blockquote type=3D"cite">class=3D3D"Apple-style-span"=
> style=3D3D"border-collapse: separate; =3D<br></blockquote><blockquote =
>type=3D"cite">-webkit-border-horizontal-spacing: 0px; =
>-webkit-border-vertical-spacing: =3D<br></blockquote><blockquote =
>type=3D"cite">0px; color: rgb(0, 0, 0); font-family: Helvetica; =
>font-size: 12px; =3D<br></blockquote><blockquote type=3D"cite">font-style:=
> normal; font-variant: normal; font-weight: normal; =
>=3D<br></blockquote><blockquote type=3D"cite">letter-spacing: normal; =
>line-height: normal; =3D<br></blockquote><blockquote =
>type=3D"cite">-webkit-text-decorations-in-effect: none; text-indent: =
>0px; =3D<br></blockquote><blockquote =
>type=3D"cite">-webkit-text-size-adjust: auto; text-transform: none; =
>orphans: 2; =3D<br></blockquote><blockquote type=3D"cite">white-space: =
>normal; widows: 2; word-spacing: 0px; "><span =
>=3D<br></blockquote><blockquote type=3D"cite">class=3D3D"Apple-style-span"=
> style=3D3D"border-collapse: separate; =3D<br></blockquote><blockquote =
>type=3D"cite">-webkit-border-horizontal-spacing: 0px; =
>-webkit-border-vertical-spacing: =3D<br></blockquote><blockquote =
>type=3D"cite">0px; color: rgb(0, 0, 0); font-family: Helvetica; =
>font-size: 12px; =3D<br></blockquote><blockquote type=3D"cite">font-style:=
> normal; font-variant: normal; font-weight: normal; =
>=3D<br></blockquote><blockquote type=3D"cite">letter-spacing: normal; =
>line-height: normal; =3D<br></blockquote><blockquote =
>type=3D"cite">-webkit-text-decorations-in-effect: none; text-indent: =
>0px; =3D<br></blockquote><blockquote =
>type=3D"cite">-webkit-text-size-adjust: auto; text-transform: none; =
>orphans: 2; =3D<br></blockquote><blockquote type=3D"cite">white-space: =
>normal; widows: 2; word-spacing: 0px; "><div><span =
>=3D<br></blockquote><blockquote type=3D"cite">class=3D3D"Apple-style-span"=
> style=3D3D"font-size: medium;"><font =
>=3D<br></blockquote><blockquote type=3D"cite">class=3D3D"Apple-style-span"=
> color=3D3D"#0000FF" face=3D3D"'Gill =3D<br></blockquote><blockquote =
>type=3D"cite">Sans'"><br></font></span></div>&l=
>t;/span></span></span></span></span></span&g=
>t;<=3D<br></blockquote><blockquote =
>type=3D"cite">/span></span></div></span></div>&=
>lt;/span></div><div><div>On 31 Oct 2009, =
>=3D<br></blockquote><blockquote type=3D"cite">at 12:15, Mika Nystrom =
>wrote:</div><br =3D<br></blockquote><blockquote =
>type=3D"cite">class=3D3D"Apple-interchange-newline"><blockquote =
>=3D<br></blockquote><blockquote =
>type=3D"cite">type=3D3D"cite"><div><br>More details about =
>the "catatonic" case. =3D<br></blockquote><blockquote =
>type=3D"cite">&nbsp;It's pretty bad. &nbsp;Even =
>ctrl-\<br>won't wake it up properly. =3D<br></blockquote><blockquote=
> type=3D"cite">&nbsp;Ctrl-\ is supposed to cause the program =
>to<br>abort and dump core. =3D<br></blockquote><blockquote =
>type=3D"cite">&nbsp;It does nothing to my program now! &nbsp;And =
>I think<br>I've "lost =3D<br></blockquote><blockquote =
>type=3D"cite">threads" before, =
>too.<br><br>Btw,<br><br>(90)ginger:~/t&gt;unam=
>e =3D<br></blockquote><blockquote type=3D"cite">-a<br>FreeBSD =
>ginger 7.2-RELEASE FreeBSD 7.2-RELEASE #0: Fri May &nbsp;1 =
>=3D<br></blockquote><blockquote type=3D"cite">07:18:07 UTC 2009 =
>&nbsp;&nbsp;&nbsp;&nbsp;<a =
>=3D<br></blockquote><blockquote type=3D"cite">href=3D3D"<a =
>href=3D"mailto:root at driscoll.cse.buffalo.edu">mailto:root at driscoll.cse.buf=
>falo.edu</a>"><a =
>href=3D"mailto:root at driscoll.cse.buffalo.ed">root at driscoll.cse.buffalo.ed<=
>/a>=3D<br></blockquote><blockquote =
>type=3D"cite">u</a>:/usr/obj/usr/src/sys/GENERIC =
>&nbsp;amd64<br><br>I'm happy to help =
>=3D<br></blockquote><blockquote type=3D"cite">debug if someone can give =
>me some pointers...<br><br><br> =
>=3D<br></blockquote><blockquote =
>type=3D"cite">&nbsp;&nbsp;&nbsp;&nbsp;Mika<br><br=
>>^\<br>Program received signal =3D<br></blockquote><blockquote =
>type=3D"cite">SIGQUIT, Quit.<br>0x0000000804ca037c in sigsuspend =
>() from =3D<br></blockquote><blockquote =
>type=3D"cite">/lib/libc.so.7<br>(m3gdb) =
>cont<br>Continuing.<br><br><br>***<br>*** =
>=3D<br></blockquote><blockquote type=3D"cite">runtime =
>error:<br>*** =3D<br></blockquote><blockquote =
>type=3D"cite">&nbsp;&nbsp;&nbsp;aborted<br><br>&lt=
>;br><br><br>^\<br>Program received =
>=3D<br></blockquote><blockquote type=3D"cite">signal SIGQUIT, =
>Quit.<br>0x0000000804ca037c in sigsuspend () from =
>=3D<br></blockquote><blockquote =
>type=3D"cite">/lib/libc.so.7<br>(m3gdb) where<br>#0 =
>&nbsp;0x0000000804ca037c in =3D<br></blockquote><blockquote =
>type=3D"cite">sigsuspend () from /lib/libc.so.7<br>#1 =
>&nbsp;0x0000000804b41d0a in =3D<br></blockquote><blockquote =
>type=3D"cite">sigsuspend () from /lib/libthr.so.3<br>#2 =
>&nbsp;0x0000000803780da0 in =3D<br></blockquote><blockquote =
>type=3D"cite">ThreadPThread__sigsuspend ()<br> =
>&nbsp;&nbsp;&nbsp;at =3D<br></blockquote><blockquote =
>type=3D"cite">../src/thread/PTHREAD/ThreadPThreadC.c:117<br>#3 =
>=3D<br></blockquote><blockquote type=3D"cite">&nbsp;0x000000080377ff6f=
> in SignalHandler (sig=3D3DInvalid C/C++ type code =
>=3D<br></blockquote><blockquote type=3D"cite">28 in symbol =
>table.<br>) at =3D<br></blockquote><blockquote =
>type=3D"cite">../src/thread/PTHREAD/ThreadPThread.m3:1261<br>#4 =
>&nbsp;&lt;signal =3D<br></blockquote><blockquote =
>type=3D"cite">handler called&gt;<br>#5 =
>&nbsp;0x0000000804b4829c in __error () from =
>=3D<br></blockquote><blockquote type=3D"cite">/lib/libthr.so.3<br>#6=
> &nbsp;0x0000000804b46365 in pthread_cond_signal =
>=3D<br></blockquote><blockquote type=3D"cite">() from =
>/lib/libthr.so.3<br>#7 &nbsp;0x000000080377a85d in XWait =
>=3D<br></blockquote><blockquote type=3D"cite">(self=3D3DInvalid C/C++ =
>type code 26 in symbol table.<br>) at =
>=3D<br></blockquote><blockquote =
>type=3D"cite">../src/thread/PTHREAD/ThreadPThread.m3:227<br>#8 =
>=3D<br></blockquote><blockquote type=3D"cite">&nbsp;0x000000080377b026=
> in Wait (m=3D3DInvalid C/C++ type code 26 in =
>=3D<br></blockquote><blockquote type=3D"cite">symbol table.<br>) =
>at ../src/thread/PTHREAD/ThreadPThread.m3:278<br>#9 =
>=3D<br></blockquote><blockquote type=3D"cite">&nbsp;0x000000080294a39c=
> in WaitE (on=3D3DInvalid C/C++ type code 30 in =
>=3D<br></blockquote><blockquote type=3D"cite">symbol table.<br>) =
>at ../src/SX.m3:217<br>#10 0x000000080294999a in Wait =
>=3D<br></blockquote><blockquote type=3D"cite">(on=3D3DInvalid C/C++ type =
>code 30 in symbol table.<br>) at =3D<br></blockquote><blockquote =
>type=3D"cite">../src/SX.m3:152<br>#11 0x00000008011ae748 in =
>WaitLocked (t=3D3DInvalid =3D<br></blockquote><blockquote =
>type=3D"cite">C/C++ type code 26 in symbol table.<br>) at =
>=3D<br></blockquote><blockquote =
>type=3D"cite">../src/MktAsset.m3:117<br>#12 0x00000008011b4950 in =
>RecApply (cl=3D3DInvalid=3D<br></blockquote><blockquote =
>type=3D"cite">C/C++ type code 26 in symbol table.<br>) at =
>=3D<br></blockquote><blockquote =
>type=3D"cite">../src/MktPlace.m3:469<br>#13 0x000000080377cdf3 in =
>RunThread =3D<br></blockquote><blockquote type=3D"cite">(me=3D3DInvalid =
>C/C++ type code 29 in symbol table.<br>) at =
>=3D<br></blockquote><blockquote =
>type=3D"cite">../src/thread/PTHREAD/ThreadPThread.m3:547<br>#14 =
>0x000000080377ca6a in =3D<br></blockquote><blockquote =
>type=3D"cite">ThreadBase (param=3D3DInvalid C/C++ type code 35 in symbol =
>table.<br>) at =3D<br></blockquote><blockquote =
>type=3D"cite">../src/thread/PTHREAD/ThreadPThread.m3:523<br>#15 =
>0x0000000804b3e4d1 in =3D<br></blockquote><blockquote =
>type=3D"cite">pthread_getprio () from /lib/libthr.so.3<br>#16 =
>0x0000000000000000 in ?? =3D<br></blockquote><blockquote =
>type=3D"cite">()<br>(m3gdb) <br><br><br>Mika =
>Nystrom writes:<br><blockquote =3D<br></blockquote><blockquote =
>type=3D"cite">type=3D3D"cite">Hello =
>m3devel,<br></blockquote><blockquote =
>=3D<br></blockquote><blockquote =
>type=3D"cite">type=3D3D"cite"><br></blockquote><blockquo=
>te type=3D3D"cite">I'm running =3D<br></blockquote><blockquote =
>type=3D"cite">into problems with the current release =
>=3D<br></blockquote><blockquote =
>type=3D"cite">candidate.<br></blockquote><blockquote =
>type=3D3D"cite">I'm attaching a =3D<br></blockquote><blockquote =
>type=3D"cite">backtrace from one crash, but I think I also am =
>=3D<br></blockquote><blockquote =
>type=3D"cite">seeing<br></blockquote><blockquote =
>type=3D3D"cite">deadlocks in the =3D<br></blockquote><blockquote =
>type=3D"cite">threading system---my application goes =
>=3D<br></blockquote><blockquote =
>type=3D"cite">catatonic.<br></blockquote><blockquote =
>type=3D3D"cite">Of course it *is* =3D<br></blockquote><blockquote =
>type=3D"cite">possible it's a bug in my application, but it =
>=3D<br></blockquote><blockquote =
>type=3D"cite">works<br></blockquote><blockquote =
>type=3D3D"cite">on PM3 and on CM3 on =3D<br></blockquote><blockquote =
>type=3D"cite">PPC_DARWIN.<br></blockquote><blockquote =
>=3D<br></blockquote><blockquote =
>type=3D"cite">type=3D3D"cite"><br></blockquote><blockquo=
>te type=3D3D"cite">Finally I'm =3D<br></blockquote><blockquote =
>type=3D"cite">still concerned about threading performance but in the =
>=3D<br></blockquote><blockquote =
>type=3D"cite">light<br></blockquote><blockquote =
>type=3D3D"cite">of the bugs it's hard to =
>=3D<br></blockquote><blockquote type=3D"cite">say much about it yet, I =
>think...<br></blockquote><blockquote =
>=3D<br></blockquote><blockquote =
>type=3D"cite">type=3D3D"cite"><br></blockquote><blockquo=
>te type=3D3D"cite">(The program in =3D<br></blockquote><blockquote =
>type=3D"cite">question is a highly multithreaded stock =
>=3D<br></blockquote><blockquote =
>type=3D"cite">market<br></blockquote><blockquote =
>=3D<br></blockquote><blockquote =
>type=3D"cite">type=3D3D"cite">simulator.)<br></blockquote>&=
>lt;blockquote =3D<br></blockquote><blockquote =
>type=3D"cite">type=3D3D"cite"><br></blockquote><blockquo=
>te type=3D3D"cite"> =3D<br></blockquote><blockquote =
>type=3D"cite">&nbsp;&nbsp;&nbsp;Mika<br></blockquote&=
>gt;<blockquote =3D<br></blockquote><blockquote =
>type=3D"cite">type=3D3D"cite"><br></blockquote><blockquo=
>te =3D<br></blockquote><blockquote =
>type=3D"cite">type=3D3D"cite">=3D3D=3D3D=3D3D=3D3D=3D3D=3D3D=3D3D=3D3D=3D=
>3D=3D3D=3D3D=3D3D=3D3D=3D3D=3D3D=3D3D=3D3D=3D3D=3D3D=3D3D=3D<br></blockquo=
>te><blockquote =
>type=3D"cite">=3D3D=3D3D=3D3D=3D3D=3D3D=3D3D=3D3D=3D3D=3D3D=3D3D=3D3D=3D3D=
>=3D3D=3D3D=3D3D=3D3D=3D3D=3D3D=3D3D=3D3D=3D3D=3D3D=3D3D=3D3D=3D3D=3D<br></=
>blockquote><blockquote =
>type=3D"cite">=3D3D=3D3D=3D3D=3D3D=3D3D=3D3D=3D3D=3D3D=3D3D=3D3D=3D3D=3D3D=
>=3D3D=3D3D=3D3D<br></blockquote><blockquote =
>=3D<br></blockquote><blockquote =
>type=3D"cite">type=3D3D"cite"><br></blockquote><blockquo=
>te =3D<br></blockquote><blockquote =
>type=3D"cite">type=3D3D"cite">***<br></blockquote><block=
>quote type=3D3D"cite">*** runtime =3D<br></blockquote><blockquote =
>type=3D"cite">error:<br></blockquote><blockquote =
>type=3D3D"cite">*** =3D<br></blockquote><blockquote =
>type=3D"cite">&nbsp;&nbsp;&nbsp;&lt;*ASSERT*&gt; =
>failed.<br></blockquote><blockquote =
>=3D<br></blockquote><blockquote type=3D"cite">type=3D3D"cite">*** =
>&nbsp;&nbsp;&nbsp;file =3D<br></blockquote><blockquote =
>type=3D"cite">"../src/thread/PTHREAD/ThreadPThread.m3", line =
>=3D<br></blockquote><blockquote =
>type=3D"cite">589<br></blockquote><blockquote =
>=3D<br></blockquote><blockquote =
>type=3D"cite">type=3D3D"cite">***<br></blockquote><block=
>quote =3D<br></blockquote><blockquote =
>type=3D"cite">type=3D3D"cite"><br></blockquote><blockquo=
>te =3D<br></blockquote><blockquote =
>type=3D"cite">type=3D3D"cite"><br></blockquote><blockquo=
>te type=3D3D"cite">Program =3D<br></blockquote><blockquote =
>type=3D"cite">received signal SIGABRT, =
>Aborted.<br></blockquote><blockquote =
>=3D<br></blockquote><blockquote =
>type=3D"cite">type=3D3D"cite">0x0000000804c9fa9c in thr_kill () from =
>=3D<br></blockquote><blockquote =
>type=3D"cite">/lib/libc.so.7<br></blockquote><blockquote =
>type=3D3D"cite">(m3gdb) show =3D<br></blockquote><blockquote =
>type=3D"cite">args<br></blockquote><blockquote =
>type=3D3D"cite">Argument list to give =3D<br></blockquote><blockquote =
>type=3D"cite">program being debugged when it is started is =
>"@M3debugtrace=3D3Dmktsim.out =3D<br></blockquote><blockquote =
>type=3D"cite">-tz America/New_York -bugbehavior None -symbology ric =
>-symbology =3D<br></blockquote><blockquote =
>type=3D"cite">tws<br></blockquote><blockquote =
>type=3D3D"cite">-replay =3D<br></blockquote><blockquote =
>type=3D"cite">mktisolator090910.ticks 2009-09-10 at 13:30 -to =
>2009-09-10 at 15:59 -port 7001 =3D<br></blockquote><blockquote =
>type=3D"cite">-dp 0.05 7003 -dp 0.10 7005 -dp 0.15 7007 -dp 0.20 7009 =
>-dp 0.25 7011 =3D<br></blockquote><blockquote type=3D"cite">-dp 0.30 =
><br></blockquote><blockquote type=3D3D"cite">7013 =
>-sync 60 =3D<br></blockquote><blockquote type=3D"cite">-unsolicitedfills =
>0.5 -cp 0.5 -xtimeport 7200 =3D<br></blockquote><blockquote =
>type=3D"cite">isolate90.src".<br></blockquote><blockquote =
>type=3D3D"cite">(m3gdb) =3D<br></blockquote><blockquote =
>type=3D"cite">where<br></blockquote><blockquote =
>type=3D3D"cite">#0 =3D<br></blockquote><blockquote =
>type=3D"cite">&nbsp;0x0000000804c9fa9c in thr_kill () from =
>=3D<br></blockquote><blockquote =
>type=3D"cite">/lib/libc.so.7<br></blockquote><blockquote =
>type=3D3D"cite">#1 =3D<br></blockquote><blockquote =
>type=3D"cite">&nbsp;0x0000000804d2ef8b in abort () from =
>=3D<br></blockquote><blockquote =
>type=3D"cite">/lib/libc.so.7<br></blockquote><blockquote =
>type=3D3D"cite">#2 =3D<br></blockquote><blockquote =
>type=3D"cite">&nbsp;0x0000000803777bf7 in Crash () at =
>=3D<br></blockquote><blockquote =
>type=3D"cite">../src/runtime/POSIX/RTOS.m3:20<br></blockquote>=
><blockquote =3D<br></blockquote><blockquote =
>type=3D"cite">type=3D3D"cite">#3 &nbsp;0x000000080376b615 in =
>Crash (msg=3D3DInvalid C/C++ =3D<br></blockquote><blockquote =
>type=3D"cite">type code 26 in symbol =
>table.<br></blockquote><blockquote type=3D3D"cite">) =
>=3D<br></blockquote><blockquote type=3D"cite">at =
>../src/runtime/common/RTProcess.m3:65<br></blockquote><bloc=
>kquote =3D<br></blockquote><blockquote type=3D"cite">type=3D3D"cite">#4=
> &nbsp;0x0000000803768ab2 in EndError (crash=3D3DInvalid =
>=3D<br></blockquote><blockquote type=3D"cite">C/C++ type code 36 in =
>symbol table.<br></blockquote><blockquote =
>=3D<br></blockquote><blockquote type=3D"cite">type=3D3D"cite">) at =
>=3D<br></blockquote><blockquote =
>type=3D"cite">../src/runtime/common/RTError.m3:118<br></blockquot=
>e><blockquote =3D<br></blockquote><blockquote =
>type=3D"cite">type=3D3D"cite">#5 &nbsp;0x00000008037687aa in MsgS =
>(file=3D3DInvalid C/C++ =3D<br></blockquote><blockquote type=3D"cite">type=
> code 35 in symbol table.<br></blockquote><blockquote =
>type=3D3D"cite">) =3D<br></blockquote><blockquote type=3D"cite">at =
>../src/runtime/common/RTError.m3:40<br></blockquote><blockq=
>uote =3D<br></blockquote><blockquote type=3D"cite">type=3D3D"cite">#6 =
>&nbsp;0x0000000803768f85 in Crash (a=3D3DInvalid C/C++ =
>=3D<br></blockquote><blockquote type=3D"cite">type code 30 in symbol =
>table.<br></blockquote><blockquote type=3D3D"cite">) =
>=3D<br></blockquote><blockquote type=3D"cite">at =
>../src/runtime/common/RTException.m3:79<br></blockquote><bl=
>ockquote =3D<br></blockquote><blockquote type=3D"cite">type=3D3D"cite">=
>#7 &nbsp;0x0000000803768c3c in DefaultBackstop (a=3D3DInvalid =
>=3D<br></blockquote><blockquote type=3D"cite">C/C++ type code 30 in =
>symbol table.<br></blockquote><blockquote =
>=3D<br></blockquote><blockquote type=3D"cite">type=3D3D"cite">) at =
>=3D<br></blockquote><blockquote =
>type=3D"cite">../src/runtime/common/RTException.m3:39<br></blockq=
>uote><blockquote =3D<br></blockquote><blockquote =
>type=3D"cite">type=3D3D"cite">#8 &nbsp;0x0000000803768b6e in =
>InvokeBackstop (a=3D3DInvalid =3D<br></blockquote><blockquote =
>type=3D"cite">C/C++ type code 30 in symbol =
>table.<br></blockquote><blockquote =
>=3D<br></blockquote><blockquote type=3D"cite">type=3D3D"cite">) at =
>=3D<br></blockquote><blockquote =
>type=3D"cite">../src/runtime/common/RTException.m3:25<br></blockq=
>uote><blockquote =3D<br></blockquote><blockquote =
>type=3D"cite">type=3D3D"cite">#9 &nbsp;0x0000000803778eab in =
>Raise (act=3D3DInvalid C/C++ =3D<br></blockquote><blockquote =
>type=3D"cite">type code 30 in symbol =
>table.<br></blockquote><blockquote type=3D3D"cite">) =
>=3D<br></blockquote><blockquote type=3D"cite">at =
>../src/runtime/ex_frame/RTExFrame.m3:29<br></blockquote><bl=
>ockquote =3D<br></blockquote><blockquote =
>type=3D"cite">type=3D3D"cite">#10 0x0000000803768cee in =
>DefaultBackstop (a=3D3DInvalid =3D<br></blockquote><blockquote =
>type=3D"cite">C/C++ type code 30 in symbol =
>table.<br></blockquote><blockquote =
>=3D<br></blockquote><blockquote type=3D"cite">type=3D3D"cite">) at =
>=3D<br></blockquote><blockquote =
>type=3D"cite">../src/runtime/common/RTException.m3:47<br></blockq=
>uote><blockquote =3D<br></blockquote><blockquote =
>type=3D"cite">type=3D3D"cite">#11 0x0000000803768b6e in =
>InvokeBackstop (a=3D3DInvalid =3D<br></blockquote><blockquote =
>type=3D"cite">C/C++ type code 30 in symbol =
>table.<br></blockquote><blockquote =
>=3D<br></blockquote><blockquote type=3D"cite">type=3D3D"cite">) at =
>=3D<br></blockquote><blockquote =
>type=3D"cite">../src/runtime/common/RTException.m3:25<br></blockq=
>uote><blockquote =3D<br></blockquote><blockquote =
>type=3D"cite">type=3D3D"cite">#12 0x0000000803778eab in Raise =
>(act=3D3DInvalid C/C++ type =3D<br></blockquote><blockquote =
>type=3D"cite">code 30 in symbol =
>table.<br></blockquote><blockquote type=3D3D"cite">) =
>at =3D<br></blockquote><blockquote =
>type=3D"cite">../src/runtime/ex_frame/RTExFrame.m3:29<br></blockq=
>uote><blockquote =3D<br></blockquote><blockquote =
>type=3D"cite">type=3D3D"cite">#13 0x0000000803750241 in ReportFault =
>(module=3D3DInvalid =3D<br></blockquote><blockquote type=3D"cite">C/C++ =
>type code 35 in symbol table.<br></blockquote><blockquote =
>=3D<br></blockquote><blockquote type=3D"cite">type=3D3D"cite">) at =
>=3D<br></blockquote><blockquote =
>type=3D"cite">../src/runtime/common/RTHooks.m3:110<br></blockquot=
>e><blockquote =3D<br></blockquote><blockquote =
>type=3D"cite">type=3D3D"cite">#14 0x0000000803780acf in _m3_fault =
>(arg=3D3DInvalid C/C++ =3D<br></blockquote><blockquote type=3D"cite">type =
>code 39 in symbol table.<br></blockquote><blockquote =
>=3D<br></blockquote><blockquote =
>type=3D"cite">type=3D3D"cite">)<br></blockquote><blockqu=
>ote type=3D3D"cite"> &nbsp;from =3D<br></blockquote><blockquote =
>type=3D"cite">/usr/local/cm3/pkg/m3core/AMD64_FREEBSD/libm3core.so.5<br=
>></blockquote><bl=3D<br></blockquote><blockquote =
>type=3D"cite">ockquote type=3D3D"cite">#15 0x000000080377d1bc in Fork =
>(closure=3D3DInvalid =3D<br></blockquote><blockquote type=3D"cite">C/C++ =
>type code 26 in symbol table.<br></blockquote><blockquote =
>=3D<br></blockquote><blockquote type=3D"cite">type=3D3D"cite">) at =
>=3D<br></blockquote><blockquote =
>type=3D"cite">../src/thread/PTHREAD/ThreadPThread.m3:589<br></blo=
>ckquote><blockquote =3D<br></blockquote><blockquote =
>type=3D"cite">type=3D3D"cite">#16 0x00000008011b1651 in AddAsset =
>(t=3D3DInvalid C/C++ type =3D<br></blockquote><blockquote =
>type=3D"cite">code 26 in symbol =
>table.<br></blockquote><blockquote type=3D3D"cite">) =
>at =3D<br></blockquote><blockquote =
>type=3D"cite">../src/MktPlace.m3:116<br></blockquote><block=
>quote type=3D3D"cite">#17 =3D<br></blockquote><blockquote =
>type=3D"cite">0x00000000004085c6 in Init (t=3D3DInvalid C/C++ type code =
>26 in symbol =3D<br></blockquote><blockquote =
>type=3D"cite">table.<br></blockquote><blockquote =
>type=3D3D"cite">) at =3D<br></blockquote><blockquote =
>type=3D"cite">../src/MktIsolator.m3:514<br></blockquote><bl=
>ockquote type=3D3D"cite">#18 =3D<br></blockquote><blockquote =
>type=3D"cite">0x00000000004106af in Main (mode=3D3DInvalid C/C++ type =
>code 39 in symbol =3D<br></blockquote><blockquote =
>type=3D"cite">table.<br></blockquote><blockquote =
>type=3D3D"cite">) at =3D<br></blockquote><blockquote =
>type=3D"cite">../src/Main.m3:734<br></blockquote><blockquot=
>e type=3D3D"cite">#19 =3D<br></blockquote><blockquote =
>type=3D"cite">0x0000000803767c19 in RunMainBody (m=3D3DInvalid C/C++ =
>type code 29 in =3D<br></blockquote><blockquote type=3D"cite">symbol =
>table.<br></blockquote><blockquote type=3D3D"cite">) =
>at =3D<br></blockquote><blockquote =
>type=3D"cite">../src/runtime/common/RTLinker.m3:400<br></blockquo=
>te><blockquote =3D<br></blockquote><blockquote =
>type=3D"cite">type=3D3D"cite">#20 0x0000000803766e00 in AddUnitI =
>(m=3D3DInvalid C/C++ type =3D<br></blockquote><blockquote =
>type=3D"cite">code 29 in symbol =
>table.<br></blockquote><blockquote type=3D3D"cite">) =
>at =3D<br></blockquote><blockquote =
>type=3D"cite">../src/runtime/common/RTLinker.m3:114<br></blockquo=
>te><blockquote =3D<br></blockquote><blockquote =
>type=3D"cite">type=3D3D"cite">#21 0x0000000803766e9e in AddUnit =
>(b=3D3DInvalid C/C++ type =3D<br></blockquote><blockquote =
>type=3D"cite">code 31 in symbol =
>table.<br></blockquote><blockquote type=3D3D"cite">) =
>at =3D<br></blockquote><blockquote =
>type=3D"cite">../src/runtime/common/RTLinker.m3:123<br></blockquo=
>te><blockquote =3D<br></blockquote><blockquote =
>type=3D"cite">type=3D3D"cite">---Type &lt;return&gt; to =
>continue, or q &lt;return&gt; to =3D<br></blockquote><blockquote =
>type=3D"cite">quit---<br></blockquote><blockquote =
>type=3D3D"cite">#22 0x0000000000404194 =3D<br></blockquote><blockquote =
>type=3D"cite">in main (argc=3D3D44, argv=3D3D0x7fffffffdde8, =
>envp=3D3D0x7fffffffdf50) at =3D<br></blockquote><blockquote =
>type=3D"cite">_m3main.mc:4<br></blockquote><blockquote =
>type=3D3D"cite">#23 =3D<br></blockquote><blockquote =
>type=3D"cite">0x00000000004040de in _start =
>()<br></blockquote><blockquote =
>=3D<br></blockquote><blockquote type=3D"cite">type=3D3D"cite">(m3gdb) =
>up 15<br></blockquote><blockquote type=3D3D"cite">#15 =
>=3D<br></blockquote><blockquote type=3D"cite">0x000000080377d1bc in Fork =
>=3D<br></blockquote><blockquote =
>type=3D"cite">(closure=3D3D16_00000008064c8930)<br></blockquote&g=
>t;<blockquote type=3D3D"cite">=3D<br></blockquote><blockquote =
>type=3D"cite">&nbsp;&nbsp;at =3D<br></blockquote><blockquote =
>type=3D"cite">../src/thread/PTHREAD/ThreadPThread.m3:589<br></blo=
>ckquote><blockquote =3D<br></blockquote><blockquote =
>type=3D"cite">type=3D3D"cite">589 =
>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&amp=
>;nbsp;WITH r =3D<br></blockquote><blockquote type=3D"cite">=3D3D =
>pthread_mutex_lock_active() DO &lt;*ASSERT r=3D3D0*&gt; =
>=3D<br></blockquote><blockquote =
>type=3D"cite">END;<br></blockquote><blockquote =
>type=3D3D"cite">Current language: =3D<br></blockquote><blockquote =
>type=3D"cite">&nbsp;auto; currently =
>Modula-3<br></blockquote><blockquote =
>=3D<br></blockquote><blockquote type=3D"cite">type=3D3D"cite">(m3gdb) =
>print r<br></blockquote><blockquote =
>type=3D3D"cite">$1=3D<br></blockquote><blockquote type=3D"cite">=3D3D =
>11<br></blockquote><blockquote type=3D3D"cite">(m3gdb) =
>=3D<br></blockquote><blockquote =
>type=3D"cite"><br></blockquote><blockquote =
>type=3D3D"cite"><br></blockquote><blockquote =
>=3D<br></blockquote><blockquote =
>type=3D"cite">type=3D3D"cite">=3D3D=3D3D=3D3D=3D3D=3D3D=3D3D=3D3D=3D3D=3D=
>3D=3D3D=3D3D=3D3D=3D3D=3D3D=3D3D=3D3D=3D3D=3D3D=3D3D=3D3D=3D<br></blockquo=
>te><blockquote =
>type=3D"cite">=3D3D=3D3D=3D3D=3D3D=3D3D=3D3D=3D3D=3D3D=3D3D=3D3D=3D3D=3D3D=
>=3D3D=3D3D=3D3D=3D3D=3D3D=3D3D=3D3D=3D3D=3D3D=3D3D=3D3D=3D3D=3D3D=3D<br></=
>blockquote><blockquote =
>type=3D"cite">=3D3D=3D3D=3D3D=3D3D=3D3D=3D3D=3D3D=3D3D=3D3D=3D3D=3D3D=3D3D=
>=3D3D=3D3D=3D3D<br></blockquote><blockquote =
>=3D<br></blockquote><blockquote =
>type=3D"cite">type=3D3D"cite"><br></blockquote><blockquo=
>te =3D<br></blockquote><blockquote =
>type=3D"cite">type=3D3D"cite"><br></blockquote></div>=
></blockquote></div><br></body></html>=3D<br>=
></blockquote><blockquote type=3D"cite"><br></blockquote><blockquote =
>type=3D"cite">--Apple-Mail-21--467118296--<br></blockquote></div></blockqu=
>ote></div><br></div></body></html>=
>
>--Apple-Mail-24--465395183--



More information about the M3devel mailing list