[M3devel] Status of threads for RC4?
Olaf Wagner
wagner at elegosoft.com
Wed Oct 14 08:09:56 CEST 2009
Quoting Tony Hosking <hosking at cs.purdue.edu>:
> I need to see all the threads:
>
> thread apply all bt
Well, of course you need all thread stacks to diagnose a deadlock,
silly me. But I haven't been able to login again since then:
Jay, is the OpenBSD server turned off? Could you either turn it on
this evening CET or send Tony the needed traces?
Thanks in advance,
Olaf
> On 13 Oct 2009, at 02:46, Olaf Wagner wrote:
>
>> Quoting Tony Hosking <hosking at cs.purdue.edu>:
>>
>>> I need a stack dump from the hung OpenBSD p007 run to diagnose (attach
>>> to the process using gdb and grab a stack dump). Are we seeing this
>>> on any other pthread target?
>>
>> I just logged in quickly to Jay's OpenBSD system and started test 7.
>> Output stops after line 8 and I had to hit Control-C.
>>
>>
>> bash-3.2$ m3gdb src/p0/p007/I386_OPENBSD/pgm
>> GNU gdb plus Modula-3 6.4
>> Copyright 2005 Free Software Foundation, Inc.
>> GDB is free software, covered by the GNU General Public License,
>> and you are
>> welcome to change it and/or distribute copies of it under certain
>> conditions.
>> Type "show copying" to see the conditions.
>> There is absolutely no warranty for GDB. Type "show warranty" for details.
>> This GDB was configured as "i686-openbsd"...
>> (m3gdb) r
>> Starting program: /home/hudson/workspace/cm3-test-m3tests-
>> I386_OPENBSD/cm3/m3-sys/m3tests/src/p0/p007/I386_OPENBSD/pgm
>>
>> 1: 1
>> 2: 1 2
>> 3: 1 2 3
>> 4: 1 2 3 4
>> 5: 1 2 3 4 5
>> 6: 1 2 3 4 5 6
>> 7: 1 2 3 4 5 6 7
>> 8: 1 2 3 4 5 6 7 8
>> 9: ^C
>> Program received signal SIGINT, Interrupt.
>> 0x0e3f18f1 in poll () from /usr/lib/libc.so.50.1
>> (m3gdb) bt
>> #0 0x0e3f18f1 in poll () from /usr/lib/libc.so.50.1
>> #1 0x0910f314 in _thread_kern_poll (wait_reqd=1)
>> at /usr/src/lib/libpthread/uthread/uthread_kern.c:760
>> #2 0x0910ee53 in _thread_kern_sched (scp=0x0)
>> at /usr/src/lib/libpthread/uthread/uthread_kern.c:382
>> #3 0x0910f19f in _thread_kern_sched_state (state=688918728,
>> fname=0x291010c8 "", lineno=688918728)
>> at /usr/src/lib/libpthread/uthread/uthread_kern.c:550
>> #4 0x09109085 in nanosleep (time_to_sleep=0x8544ec68,
>> time_remaining=0x8544ec70)
>> at /usr/src/lib/libpthread/uthread/uthread_nanosleep.c:84
>> #5 0x1c023181 in ThreadPThread__Nanosleep (req=0x8544ec68, rem=0x8544ec70)
>> at ../src/thread/PTHREAD/ThreadPThreadC.c:317
>> #6 0x1c01fb54 in CommonSleep () at ../src/thread/PTHREAD/
>> ThreadPThread.m3:740
>> #7 0x1c0219d3 in StopWorld () at ../src/thread/PTHREAD/
>> ThreadPThread.m3:1253
>> #8 0x1c021041 in SuspendOthers ()
>> at ../src/thread/PTHREAD/ThreadPThread.m3:1029
>> #9 0x1c007ccb in CollectSomeInStateZero ()
>> at ../src/runtime/common/RTCollector.m3:735
>> #10 0x1c007c8a in CollectSome () at ../src/runtime/common/
>> RTCollector.m3:709
>> #11 0x1c00773d in CollectEnough () at ../src/runtime/common/
>> RTCollector.m3:643
>> #12 0x1c004de1 in AllocTraced (dataSize=Invalid C/C++ type code 40
>> in symbol table.
>> )
>> at ../src/runtime/common/RTAllocator.m3:363
>> #13 0x1c004056 in GetTracedObj (def=Invalid C/C++ type code 29 in
>> symbol table.
>> )
>> at ../src/runtime/common/RTAllocator.m3:222
>> #14 0x1c0039ec in AllocateTracedObj (defn=Invalid C/C++ type code
>> 35 in symbol table.
>> )
>> at ../src/runtime/common/RTAllocator.m3:120
>> #15 0x1c002b82 in Task (self=Invalid C/C++ type code 26 in symbol table.
>> ) at ../Main.m3:58
>> #16 0x1c01ed3e in RunThread (me=Invalid C/C++ type code 29 in symbol table.
>> )
>> at ../src/thread/PTHREAD/ThreadPThread.m3:588
>> #17 0x1c01ea83 in ThreadBase (param=Invalid C/C++ type code 35 in
>> symbol table.
>> )
>> at ../src/thread/PTHREAD/ThreadPThread.m3:564
>> #18 0x0910637f in _thread_start ()
>> at /usr/src/lib/libpthread/uthread/uthread_create.c:240
>> #19 0x0000002b in ?? ()
>> #20 0x00000000 in ?? ()
>> (m3gdb) set lang Modula-3
>> (m3gdb) bt
>> #0 0x0e3f18f1 in poll () from /usr/lib/libc.so.50.1
>> #1 0x0910f314 in _thread_kern_poll (wait_reqd=1)
>> at /usr/src/lib/libpthread/uthread/uthread_kern.c:760
>> #2 0x0910ee53 in _thread_kern_sched (scp=0x0)
>> at /usr/src/lib/libpthread/uthread/uthread_kern.c:382
>> #3 0x0910f19f in _thread_kern_sched_state (state=688918728,
>> fname=0x291010c8 "\000", lineno=688918728)
>> at /usr/src/lib/libpthread/uthread/uthread_kern.c:550
>> #4 0x09109085 in nanosleep (time_to_sleep=0x8544ec68,
>> time_remaining=0x8544ec70)
>> at /usr/src/lib/libpthread/uthread/uthread_nanosleep.c:84
>> #5 0x1c023181 in ThreadPThread__Nanosleep (req=0x8544ec68, rem=0x8544ec70)
>> at ../src/thread/PTHREAD/ThreadPThreadC.c:317
>> #6 0x1c01fb54 in CommonSleep () at ../src/thread/PTHREAD/
>> ThreadPThread.m3:740
>> #7 0x1c0219d3 in StopWorld () at ../src/thread/PTHREAD/
>> ThreadPThread.m3:1253
>> #8 0x1c021041 in SuspendOthers ()
>> at ../src/thread/PTHREAD/ThreadPThread.m3:1029
>> #9 0x1c007ccb in CollectSomeInStateZero ()
>> at ../src/runtime/common/RTCollector.m3:735
>> #10 0x1c007c8a in CollectSome () at ../src/runtime/common/
>> RTCollector.m3:709
>> #11 0x1c00773d in CollectEnough () at ../src/runtime/common/
>> RTCollector.m3:643
>> #12 0x1c004de1 in AllocTraced (dataSize=12, dataAlignment=4, thread=
>> RECORD inCritical = 0; pool = RECORD note = Allocated; pure =
>> FALSE; page = NIL; next = NIL; limit = NIL; END; END)
>> at ../src/runtime/common/RTAllocator.m3:363
>> #13 0x1c004056 in GetTracedObj (def=16_3c001114)
>> at ../src/runtime/common/RTAllocator.m3:222
>> #14 0x1c0039ec in AllocateTracedObj (defn=16_3c001114)
>> at ../src/runtime/common/RTAllocator.m3:120
>> #15 0x1c002b82 in Task (self=16_8bc4a00c) at ../Main.m3:58
>> #16 0x1c01ed3e in RunThread (me=16_7faae480)
>> at ../src/thread/PTHREAD/ThreadPThread.m3:588
>> #17 0x1c01ea83 in ThreadBase (param=16_7faae480)
>> at ../src/thread/PTHREAD/ThreadPThread.m3:564
>> #18 0x0910637f in _thread_start ()
>> at /usr/src/lib/libpthread/uthread/uthread_create.c:240
>> #19 0x0000002b in ?? ()
>> #20 0x00000000 in ?? ()
>> (m3gdb)
>>
>> Attaching to a running program doesn't yield anything useful:
>>
>> bash-3.2$ src/p0/p007/I386_OPENBSD/pgm &
>> [1] 26756
>> bash-3.2$
>> 1: 1
>> 2: 1 2
>> 3: 1 2 3
>> 4: 1 2 3 4
>> 5: 1 2 3 4 5
>> 6: 1 2 3 4 5 6
>> 7: 1 2 3 4 5 6 7
>> 8: 1 2 3 4 5 6 7 8
>> 9:
>> bash-3.2$ ps
>> PID TT STAT TIME COMMAND
>> 22500 p0 Is 0:00.00 -ksh (ksh)
>> 18592 p0 S 0:00.04 bash
>> 26756 p0 S 0:00.02 src/p0/p007/I386_OPENBSD/pgm
>> 28998 p0 R+ 0:00.00 ps
>> bash-3.2$ m3gdb
>> GNU gdb plus Modula-3 6.4
>> Copyright 2005 Free Software Foundation, Inc.
>> GDB is free software, covered by the GNU General Public License,
>> and you are
>> welcome to change it and/or distribute copies of it under certain
>> conditions.
>> Type "show copying" to see the conditions.
>> There is absolutely no warranty for GDB. Type "show warranty" for details.
>> This GDB was configured as "i686-openbsd".
>> (m3gdb) attach 26756
>> Attaching to process 26756
>> 0x0d35f8f1 in ?? ()
>> (m3gdb) set symbol-file src/p0/p007/I386_OPENBSD/pgm
>> No symbol table is loaded. Use the "file" command.
>> (m3gdb) symbol-file src/p0/p007/I386_OPENBSD/pgm
>> Reading symbols from /home/hudson/workspace/cm3-test-m3tests-
>> I386_OPENBSD/cm3/m3-sys/m3tests/src/p0/p007/I386_OPENBSD/pgm...done.
>> (m3gdb) bt
>> #0 0x0d35f8f1 in ?? ()
>> #1 0x0a0c0314 in ?? ()
>> #2 0x84533000 in ?? ()
>> #3 0x00000001 in ?? ()
>> #4 0x00000001 in ?? ()
>> #5 0x00000001 in ?? ()
>> #6 0x00000000 in ?? ()
>>
>> Does this help?
>> Anything I should try this evening?
>>
>> Olaf
>> --
>> Olaf Wagner -- elego Software Solutions GmbH
>> Gustav-Meyer-Allee 25 / Gebäude 12, 13355 Berlin, Germany
>> phone: +49 30 23 45 86 96 mobile: +49 177 2345 869 fax: +49 30 23
>> 45 86 95
>> http://www.elegosoft.com | Geschäftsführer: Olaf Wagner | Sitz: Berlin
>> Handelregister: Amtsgericht Charlottenburg HRB 77719 | USt-IdNr:
>> DE163214194
>>
--
Olaf Wagner -- elego Software Solutions GmbH
Gustav-Meyer-Allee 25 / Gebäude 12, 13355 Berlin, Germany
phone: +49 30 23 45 86 96 mobile: +49 177 2345 869 fax: +49 30 23 45 86 95
http://www.elegosoft.com | Geschäftsführer: Olaf Wagner | Sitz: Berlin
Handelregister: Amtsgericht Charlottenburg HRB 77719 | USt-IdNr: DE163214194
More information about the M3devel
mailing list