[M3devel] m3 RC
Mika Nystrom
mika at async.async.caltech.edu
Sat Oct 31 19:02:14 CET 2009
Hi Tony,
Yes the thing I just posted to m3devel has @M3paranoidgc.
Mika
Tony Hosking writes:
>That assertion failure is a serious violation of the collector
>invariants an suggests that a reference from the stack has not been
>processed properly. Is there are red zone on AMD64_FreeBSD? Can you
>try running @M3paranoidgc to force heavy checking of GC invariants?
>
>
>On 31 Oct 2009, at 00:46, Mika Nystrom wrote:
>
>>
>> Hi Jay & Tony, sorry to do this but I sent this email to m3devel and I
>> don't think it went through. I thought you might be interested :)
>>
>> Mika
>>
>> ------- Forwarded Message
>>
>> Return-Path: <mika at async.async.caltech.edu>
>> X-Original-To: mika
>> Delivered-To: mika at async.caltech.edu
>> Received: by async.async.caltech.edu (Postfix, from userid 1004)
>> id 5BB5D1A2094; Thu, 29 Oct 2009 13:07:53 -0700 (PDT)
>> Received: from async.async.caltech.edu (localhost [127.0.0.1])
>> by async.async.caltech.edu (Postfix) with ESMTP id 577E01A2091;
>> Thu, 29 Oct 2009 13:07:53 -0700 (PDT)
>> To: m3devel at elegosoft.com
>> cc: mika at async.caltech.edu
>> Subject: RTCollector problems in 5.8.3 RC
>> Date: Thu, 29 Oct 2009 13:07:53 -0700
>> From: Mika Nystrom <mika at async.async.caltech.edu>
>> Message-Id: <20091029200753.5BB5D1A2094 at async.async.caltech.edu>
>>
>> Hello again,
>>
>> Well I installed the whole archive from the RC and recompiled rather
>> than trying to update to the head.
>>
>> Here are the files I installed from:
>>
>> cm3-bin-core-AMD64_FREEBSD-5.8.3-RC3.tgz
>> cm3-src-all-5.8.3-RC3.tgz
>>
>> And this gets much further. Mentor works, e.g.
>>
>> But after running one of my programs for a while I see the following
>> troubling stuff. I don't think the code is doing anything
>> particularly
>> strange... (this particular code is involved in recycling cons cells
>> in
>> the Scheme interpreter rather than leaving them for the GC).
>>
>> ***
>> *** runtime error:
>> *** <*ASSERT*> failed.
>> *** file "../src/runtime/common/RTCollector.m3", line 2284
>> ***
>>
>>
>> Program received signal SIGABRT, Aborted.
>> 0x0000000805c5aa9c in thr_kill () from /lib/libc.so.7
>> (m3gdb) where
>> re
>> #0 0x0000000805c5aa9c in thr_kill () from /lib/libc.so.7
>> #1 0x0000000805ce9f8b in abort () from /lib/libc.so.7
>> #2 0x0000000804732bf7 in Crash () at ../src/runtime/POSIX/RTOS.m3:20
>> #3 0x0000000804726615 in Crash (msg=Invalid C/C++ type code 26 in
>> symbol table.
>> ) at ../src/runtime/common/RTProcess.m3:65
>> #4 0x0000000804723ab2 in EndError (crash=Invalid C/C++ type code 36
> in symbol table.
>> ) at ../src/runtime/common/RTError.m3:118
>> #5 0x00000008047237aa in MsgS (file=Invalid C/C++ type code 35 in
>> symbol table.
>> ) at ../src/runtime/common/RTError.m3:40
>> #6 0x0000000804723f85 in Crash (a=Invalid C/C++ type code 30 in
>> symbol table.
>> ) at ../src/runtime/common/RTException.m3:79
>> #7 0x0000000804723c3c in DefaultBackstop (a=Invalid C/C++ type code
>> 30 in symbol table.
>> ) at ../src/runtime/common/RTException.m3:39
>> #8 0x0000000804723b6e in InvokeBackstop (a=Invalid C/C++ type code
>> 30 in symbol table.
>> ) at ../src/runtime/common/RTException.m3:25
>> #9 0x0000000804733eab in Raise (act=Invalid C/C++ type code 30 in
>> symbol table.
>> ) at ../src/runtime/ex_frame/RTExFrame.m3:29
>> #10 0x0000000804723cee in DefaultBackstop (a=Invalid C/C++ type code
>> 30 in symbol table.
>> ) at ../src/runtime/common/RTException.m3:47
>> #11 0x0000000804723b6e in InvokeBackstop (a=Invalid C/C++ type code
>> 30 in symbol table.
>> ) at ../src/runtime/common/RTException.m3:25
>> #12 0x0000000804733eab in Raise (act=Invalid C/C++ type code 30 in
>> symbol table.
>> ) at ../src/runtime/ex_frame/RTExFrame.m3:29
>> #13 0x000000080470b241 in ReportFault (module=Invalid C/C++ type
>> code 35 in symbol table.
>> ) at ../src/runtime/common/RTHooks.m3:110
>> #14 0x0000000804721026 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 0x000000080471dddf in CheckStoreTraced (dst=Invalid C/C++ type
>> code 46 in symbol table.
>> ) at ../src/runtime/common/RTCollector.m3:2284
>> #16 0x0000000801be7cc7 in ReturnCons (t=Invalid C/C++ type code 26
>> in symbol table.
>> ) at ../src/Scheme.m3:711
>> #17 0x0000000801bff957 in Apply2 (t=Invalid C/C++ type code 26 in
>> symbol table.
>> ) at ../src/SchemePrimitive.m3:550
>> #18 0x0000000801beaa9c in EvalInternal (t=Invalid C/C++ type code 26
>> in symbol table.
>> ) at ../src/Scheme.m3:574
>> #19 0x0000000801beaea4 in Eval (t=Invalid C/C++ type code 26 in
>> symbol table.
>> ) at ../src/Scheme.m3:344
>> #20 0x0000000801be87b4 in ReduceCond (t=Invalid C/C++ type code 26
>> in symbol table.
>> ) at ../src/Scheme.m3:664
>> #21 0x0000000801be9bd4 in EvalInternal (t=Invalid C/C++ type code 26
>> in symbol table.
>> ) at ../src/Scheme.m3:461
>> - ---Type <return> to continue, or q <return> to quit---
>> #22 0x0000000801beaea4 in Eval (t=Invalid C/C++ type code 26 in
>> symbol table.
>> ) at ../src/Scheme.m3:344
>> #23 0x0000000801be6f7b in EvalInGlobalEnv (t=Invalid C/C++ type code
>> 26 in symbol table.
>> ) at ../src/Scheme.m3:592
>> #24 0x000000080067505a in Run (mr=Invalid C/C++ type code 26 in
>> symbol table.
>> ) at ../src/GCOMSCode.m3:176
>> #25 0x0000000800666a17 in MApply (mr=Invalid C/C++ type code 26 in
>> symbol table.
>> ) at ../src/GCOMS.m3:225
>> #26 0x0000000804737df3 in RunThread (me=Invalid C/C++ type code 29
>> in symbol table.
>> ) at ../src/thread/PTHREAD/ThreadPThread.m3:547
>> #27 0x0000000804737a6a in ThreadBase (param=Invalid C/C++ type code
>> 35 in symbol table.
>> ) at ../src/thread/PTHREAD/ThreadPThread.m3:523
>> #28 0x0000000805af94d1 in pthread_getprio () from /lib/libthr.so.3
>> #29 0x0000000000000000 in ?? ()
>> (m3gdb) up 16
>> #16 0x0000000801be7cc7 in ReturnCons (t=16_0000000806b82018,
>> cons=16_00007ffff1dbcc30)
>> at ../src/Scheme.m3:711
>> 711 t.freePairs := cons
>> Current language: auto; currently Modula-3
>> (m3gdb) print cons
>> $1 = 16_00007ffff1dbcc30
>> (m3gdb) print t.freePairs
>> Object has no field or method named "freePairs".
>> (m3gdb) whatis cons
>> type = GCOMSCode.Pair
>> (m3gdb) print t
>> $2 = (*16_0000000806b82018*) OBJECT END
>> (m3gdb) list
>> 706 END;
>> 707
>> 708 p.first := SYMrip;
>> 709
>> 710 p.rest := t.freePairs;
>> 711 t.freePairs := cons
>> 712 END
>> 713 END ReturnCons;
>> 714
>> 715 PROCEDURE SymbolCheck(x : Object) : SchemeSymbol.T RAISES
>> { E } =
>> (m3gdb)
>> ...
>> (m3gdb) list
>> 2279 INC(checkStoreTraced); (* race, so only
>> approximate *)
>> 2280 WITH h = HeaderOf (LOOPHOLE(dst, RefReferent)), page =
>> PageToRef(p) DO
>> 2281 TRY
>> 2282 RTOS.LockHeap(thread^);
>> 2283 <*ASSERT h.typecode # RT0.TextLitTypecode*>
>> 2284 <*ASSERT NOT h.gray*> <===== here
>> 2285 WITH d = page.desc DO
>> 2286 IF h.dirty THEN
>> 2287 <*ASSERT NOT d.clean*>
>> 2288 ELSE
>> (m3gdb)
>>
>> top shows:
>>
>> PID USERNAME THR PRI NICE SIZE RES STATE C TIME WCPU
>> COMMAND
>> 85115 mika 67 20 0 119M 28636K STOP 1 0:00 0.00%
>> gcomsmaster
>>
>> Mika
>>
>> ------- End of Forwarded Message
>
More information about the M3devel
mailing list