Skip to content

Instantly share code, notes, and snippets.

@winksaville
Created December 24, 2017 04:04
Show Gist options
  • Save winksaville/758cddcd7c2d2f8a5219bc402cabef36 to your computer and use it in GitHub Desktop.
Save winksaville/758cddcd7c2d2f8a5219bc402cabef36 to your computer and use it in GitHub Desktop.
Debugging hung stdlib 1
Here is the last few lines of the output plus some debug I've added to scheduler.c:
```
---- Passed: itertools/Iter.skip_while
---- Passed: itertools/Iter.take
---- Passed: itertools/Iter.take_while
---- Passed: itertools/Iter.zip
---- Passed: serialise/Simple
---- Passed: serialise/Arrays
---- Passed: serialise/Failures
---- Passed: serialise/BoxedMachineWord
----
---- 277 tests ran.
---- Passed: 277
run_thread: 1 tid=140355670398720
run_thread: 1 tid=140355829782272
run_thread:- tid=140355670398720
run_thread:- tid=140355829782272
run_thread: 1 tid=140355821393664
run_thread:- tid=140355821393664
run_thread: 1 tid=140355813005056
run_thread:- tid=140355813005056
```
Here is the stack trace:
```
(gdb) info threads
Id Target Id Frame
1 Thread 0x7fa7364b56c0 (LWP 27438) "stdlib" 0x00007fa73533a43d in pthread_join ()
from /usr/lib/libpthread.so.0
* 2 Thread 0x7fa72be05700 (LWP 27440) "stdlib" 0x00005653b9506499 in run_thread ()
3 Thread 0x7fa721e05700 (LWP 27445) "stdlib" 0x00007fa73534389f in do_sigwait ()
from /usr/lib/libpthread.so.0
(gdb) thread 1
[Switching to thread 1 (Thread 0x7fa7364b56c0 (LWP 27438))]
#0 0x00007fa73533a43d in pthread_join () from /usr/lib/libpthread.so.0
(gdb) bt
#0 0x00007fa73533a43d in pthread_join () from /usr/lib/libpthread.so.0
#1 0x00005653b950e7cb in ponyint_thread_join ()
#2 0x00005653b95055a0 in ponyint_sched_shutdown ()
#3 0x00005653b9505857 in ponyint_sched_start ()
#4 0x00005653b95054bd in pony_start ()
#5 0x00005653b9505175 in main ()
(gdb) thread 2
[Switching to thread 2 (Thread 0x7fa72be05700 (LWP 27440))]
#0 0x00005653b9506499 in run_thread ()
(gdb) bt
#0 0x00005653b9506499 in run_thread ()
#1 0x00007fa73533908a in start_thread () from /usr/lib/libpthread.so.0
#2 0x00007fa73490942f in clone () from /usr/lib/libc.so.6
(gdb) thread 3
[Switching to thread 3 (Thread 0x7fa721e05700 (LWP 27445))]
#0 0x00007fa73534389f in do_sigwait () from /usr/lib/libpthread.so.0
(gdb) bt
#0 0x00007fa73534389f in do_sigwait () from /usr/lib/libpthread.so.0
#1 0x00007fa73534392d in sigwait () from /usr/lib/libpthread.so.0
#2 0x00005653b950e842 in ponyint_thread_suspend ()
#3 0x00005653b95067b3 in run_thread ()
#4 0x00007fa73533908a in start_thread () from /usr/lib/libpthread.so.0
#5 0x00007fa73490942f in clone () from /usr/lib/libc.so.6
```
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment