[M3devel] AMD64_FREEBSD problems with current RC from m3 site

Mika Nystrom mika at async.async.caltech.edu
Sat Oct 31 17:15:14 CET 2009


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) 
>
>============================================================
>
>



More information about the M3devel mailing list