Skip to content

Instantly share code, notes, and snippets.

@dogbert17
Last active April 16, 2020 23:02
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save dogbert17/76bde0a80c8988a699f73c3f441d9f62 to your computer and use it in GitHub Desktop.
Save dogbert17/76bde0a80c8988a699f73c3f441d9f62 to your computer and use it in GitHub Desktop.
Problem when using the heap profiler
(gdb) r
Starting program: /home/dogbert/.rakudobrew/versions/moar-master/install/bin/rakudo-m --profile --profile-kind=heap -Ilib t/46_eol_si.t
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
[New Thread 0x7ffff655d700 (LWP 2783)]
ok 1 - combine |"\n" - Str - "\r"|
ok 2 - string |"\n" - Str - "\r"|
ok 3 - parse |"\n" - Str - "\r"|
ok 4 - fields |"\n" - Str - "\r"|
ok 5 - result |"\n" - Str - "\r"|
ok 6 - getline |"\n" - Str - "\r"|
ok 7 - result |"\n" - Str - "\r"|
ok 8 - combine |"\n" - Str - "\n"|
ok 9 - string |"\n" - Str - "\n"|
ok 10 - parse |"\n" - Str - "\n"|
ok 11 - fields |"\n" - Str - "\n"|
ok 12 - result |"\n" - Str - "\n"|
Thread 1 "rakudo-m" hit Breakpoint 1, MVM_panic (exitCode=1, messageFormat=0x7ffff7677970 "Adding item to worklist already freed in gen2\n") at src/core/exceptions.c:835
835 MVM_NO_RETURN void MVM_panic(MVMint32 exitCode, const char *messageFormat, ...) {
(gdb) bt
#0 MVM_panic (exitCode=1, messageFormat=0x7ffff7677970 "Adding item to worklist already freed in gen2\n") at src/core/exceptions.c:835
#1 0x00007ffff75127a4 in gc_mark (tc=0x603d70, st=0x66ee90, data=0x6d3130, worklist=0x3555a70) at src/6model/reprs/MVMCompUnit.c:52
#2 0x00007ffff74cf9b3 in MVM_gc_mark_collectable (tc=0x603d70, worklist=0x3555a70, new_addr=0x6d3118) at src/gc/collect.c:438
#3 0x00007ffff74c98d3 in MVM_gc_root_add_gen2s_to_worklist (tc=0x603d70, worklist=0x3555a70) at src/gc/roots.c:340
#4 0x00007ffff74cc554 in MVM_gc_collect (tc=0x603d70, what_to_do=0 '\000', gen=0 '\000') at src/gc/collect.c:155
#5 0x00007ffff74c0766 in run_gc (tc=0x603d70, what_to_do=0 '\000') at src/gc/orchestrate.c:444
#6 0x00007ffff74c0e3e in MVM_gc_enter_from_allocator (tc=0x603d70) at src/gc/orchestrate.c:599
#7 0x00007ffff74c16ba in MVM_gc_allocate_nursery (tc=0x603d70, size=48) at src/gc/allocation.c:37
#8 0x00007ffff74c14b5 in MVM_gc_allocate (tc=0x603d70, size=48) at src/gc/allocation.h:18
#9 0x00007ffff74c1743 in MVM_gc_allocate_zeroed (tc=0x603d70, size=48) at src/gc/allocation.c:56
#10 0x00007ffff74c1ae6 in MVM_gc_allocate_object (tc=0x603d70, st=0x23e6c48) at src/gc/allocation.c:93
#11 0x00007ffff75066c0 in allocate (tc=0x603d70, st=0x23e6c48) at src/6model/reprs/P6opaque.c:60
#12 0x00007ffff7455abd in MVM_interp_run (tc=0x603d70, initial_invoke=0x7ffff760027b <toplevel_initial_invoke>, invoke_data=0x6e2038) at src/core/interp.c:1880
#13 0x00007ffff7600419 in MVM_vm_run_file (instance=0x603260, filename=0x6031e0 "/home/dogbert/.rakudobrew/versions/moar-master/install/share/perl6/runtime/perl6.moarvm") at src/moar.c:463
#14 0x00000000004011a6 in main (argc=<optimized out>, argv=0x7fffffffddd8) at src/vm/moar/runner/main.c:392
(gdb) info threads
Id Target Id Frame
* 1 Thread 0x7ffff7fdb700 (LWP 2782) "rakudo-m" MVM_panic (exitCode=1, messageFormat=0x7ffff7677970 "Adding item to worklist already freed in gen2\n") at src/core/exceptions.c:835
2 Thread 0x7ffff655d700 (LWP 2783) "rakudo-m" pthread_cond_wait@@GLIBC_2.3.2 () at ../sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:185
(gdb) f 1
#1 0x00007ffff75127a4 in gc_mark (tc=0x603d70, st=0x66ee90, data=0x6d3130, worklist=0x3555a70) at src/6model/reprs/MVMCompUnit.c:52
52 MVM_gc_worklist_add(tc, worklist, &body->strings[i]);
(gdb) l
47 for (i = 0; i < body->num_extops; i++)
48 MVM_gc_worklist_add(tc, worklist, &body->extops[i].name);
49
50 /* Add strings to the worklists. */
51 for (i = 0; i < body->num_strings; i++)
52 MVM_gc_worklist_add(tc, worklist, &body->strings[i]);
53
54 /* Add serialization contexts to the worklist. */
55 for (i = 0; i < body->num_scs; i++) {
56 if (body->scs[i]) {
(gdb)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment