[M3devel] AMD64_FREEBSD problems with current RC from m3 site

Tony Hosking hosking at cs.purdue.edu
Sat Oct 31 19:20:32 CET 2009


For what it's worth, that call should never fail.  It is unlocking a  
mutex that this thread should already hold.

On 31 Oct 2009, at 12:11, Mika Nystrom wrote:

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

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://m3lists.elegosoft.com/pipermail/m3devel/attachments/20091031/7da0bba0/attachment-0002.html>


More information about the M3devel mailing list