Skip to content

Instantly share code, notes, and snippets.

@dogbert17
Created March 3, 2022 16:26
Show Gist options
  • Save dogbert17/ab921bcf10e64b522b591f6ae0a85d75 to your computer and use it in GitHub Desktop.
Save dogbert17/ab921bcf10e64b522b591f6ae0a85d75 to your computer and use it in GitHub Desktop.
Bughunt
dogbert@dogbert-VirtualBox:~$ ASAN_OPTIONS=alloc_dealloc_mismatch=0 MVM_JIT_DISABLE=1 LD_PRELOAD=/usr/lib/x86_64-linux-gnu/libasan.so.5 perl6-gdb-m -e 'my $t = ("errors.md.tmpl" xx 1_000).join(" foo "); race for ^9_00 { my $page = $t; $page ~~ s:g[ "foo" ] = "a"; }'
================================================================================================
This is Rakudo running in the debugger, which often allows the user to generate useful back-
traces to debug or report issues in Rakudo, the MoarVM backend or the currently running code.
This Rakudo version is 2021.12 built on MoarVM version 2021.12,
running on linuxmint (20.Ulyana) / linux
Type `bt full` to generate a backtrace if applicable, type `q` to quit or `help` for help.
------------------------------------------------------------------------------------------------
Reading symbols from /home/dogbert/.rakudobrew/versions/moar-2021.12/install/bin/rakudo-m...
(No debugging symbols found in /home/dogbert/.rakudobrew/versions/moar-2021.12/install/bin/rakudo-m)
Starting program: /home/dogbert/.rakudobrew/versions/moar-2021.12/install/bin/rakudo-m -e my\ \$t\ =\ \(\"errors.md.tmpl\"\ xx\ 1_000\).join\(\"\ foo\ \"\)\;\ race\ for\ \^9_00\ \{\ my\ \$page\ =\ \$t\;\ \$page\ \~\~\ s:g\[\ \"foo\"\ \]\ =\ \"a\"\;\ \}
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
[New Thread 0x7ffff1dfd700 (LWP 265177)]
^C
Thread 1 "rakudo-m" received signal SIGINT, Interrupt.
0x00007ffff75c3064 in ?? () from /usr/lib/x86_64-linux-gnu/libasan.so.5
(gdb) b __asan_on_error@plt
Breakpoint 1 at 0x7ffff75b9320
(gdb) c
Continuing.
[New Thread 0x7fffed742700 (LWP 265179)]
[New Thread 0x7fffece85700 (LWP 265180)]
[New Thread 0x7fffec066700 (LWP 265181)]
[New Thread 0x7fffeb777700 (LWP 265182)]
[New Thread 0x7fffeab49700 (LWP 265183)]
[New Thread 0x7fffea07f700 (LWP 265184)]
[New Thread 0x7fffe9657700 (LWP 265185)]
[New Thread 0x7fffe8c2f700 (LWP 265186)]
=================================================================
[Switching to Thread 0x7fffeab49700 (LWP 265183)]
Thread 7 "rakudo-m" hit Breakpoint 1, 0x00007ffff75b9320 in __asan_on_error@plt () from /usr/lib/x86_64-linux-gnu/libasan.so.5
(gdb) bt
#0 0x00007ffff75b9320 in __asan_on_error@plt () from /usr/lib/x86_64-linux-gnu/libasan.so.5
#1 0x00007ffff76ae75d in ?? () from /usr/lib/x86_64-linux-gnu/libasan.so.5
#2 0x00007ffff76aca1e in ?? () from /usr/lib/x86_64-linux-gnu/libasan.so.5
#3 0x00007ffff75bfecd in ?? () from /usr/lib/x86_64-linux-gnu/libasan.so.5
#4 0x00007ffff76a50b2 in realloc () from /usr/lib/x86_64-linux-gnu/libasan.so.5
#5 0x00007ffff64375ae in MVM_realloc (p=0x6190013baa80, size=2048) at src/core/alloc.h:20
#6 0x00007ffff643a6bf in set_size_internal (tc=0x618000261480, body=0x7fffede55320, n=129, repr_data=0x6030002eefa0) at src/6model/reprs/VMArray.c:372
#7 0x00007ffff643b99a in MVM_VMArray_push (tc=0x618000261480, st=0x62e0000a3780, root=0x7fffede55308, data=0x7fffede55320, value=..., kind=8) at src/6model/reprs/VMArray.c:486
#8 0x00007ffff62aa70c in MVM_interp_run (tc=0x618000261480, initial_invoke=0x7ffff634d17b <thread_initial_invoke>, invoke_data=0x60200060ebf0, outer_runloop=0x0) at src/core/interp.c:2095
#9 0x00007ffff634d65d in start_thread (data=0x60200060ebf0) at src/core/threads.c:101
#10 0x00007ffff58f6609 in start_thread (arg=<optimized out>) at pthread_create.c:477
#11 0x00007ffff5a40163 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95
(gdb) f 7
#7 0x00007ffff643b99a in MVM_VMArray_push (tc=0x618000261480, st=0x62e0000a3780, root=0x7fffede55308, data=0x7fffede55320, value=..., kind=8) at src/6model/reprs/VMArray.c:486
486 set_size_internal(tc, body, body->elems + 1, repr_data);
(gdb) p MVM_dump_backtrace(tc)
at SETTING::src/core.c/IterationBuffer.pm6:26 (/home/dogbert/.rakudobrew/versions/moar-2021.12/install/share/perl6/runtime/CORE.c.setting.moarvm:push)
from SETTING::src/core.c/Str.pm6:1139 (/home/dogbert/.rakudobrew/versions/moar-2021.12/install/share/perl6/runtime/CORE.c.setting.moarvm:push-all)
from SETTING::src/core.c/Iterator.pm6:66 (/home/dogbert/.rakudobrew/versions/moar-2021.12/install/share/perl6/runtime/CORE.c.setting.moarvm:push-until-lazy)
from SETTING::src/core.c/List.pm6:97 (/home/dogbert/.rakudobrew/versions/moar-2021.12/install/share/perl6/runtime/CORE.c.setting.moarvm:reify-until-lazy)
from SETTING::src/core.c/List.pm6:461 (/home/dogbert/.rakudobrew/versions/moar-2021.12/install/share/perl6/runtime/CORE.c.setting.moarvm:elems)
from -e:1 (<ephemeral file>:)
from SETTING::src/core.c/Rakudo/Internals/HyperRaceSharedImpl.pm6:59 (/home/dogbert/.rakudobrew/versions/moar-2021.12/install/share/perl6/runtime/CORE.c.setting.moarvm:process-batch)
from SETTING::src/core.c/Rakudo/Internals/HyperPipeline.pm6:74 (/home/dogbert/.rakudobrew/versions/moar-2021.12/install/share/perl6/runtime/CORE.c.setting.moarvm:)
from SETTING::src/core.c/Rakudo/Internals/HyperPipeline.pm6:73 (/home/dogbert/.rakudobrew/versions/moar-2021.12/install/share/perl6/runtime/CORE.c.setting.moarvm:)
from SETTING::src/core.c/Rakudo/Internals/HyperPipeline.pm6:70 (/home/dogbert/.rakudobrew/versions/moar-2021.12/install/share/perl6/runtime/CORE.c.setting.moarvm:)
from SETTING::src/core.c/Promise.pm6:295 (/home/dogbert/.rakudobrew/versions/moar-2021.12/install/share/perl6/runtime/CORE.c.setting.moarvm:)
from SETTING::src/core.c/ThreadPoolScheduler.pm6:880 (/home/dogbert/.rakudobrew/versions/moar-2021.12/install/share/perl6/runtime/CORE.c.setting.moarvm:)
from SETTING::src/core.c/ThreadPoolScheduler.pm6:251 (/home/dogbert/.rakudobrew/versions/moar-2021.12/install/share/perl6/runtime/CORE.c.setting.moarvm:)
from SETTING::src/core.c/ThreadPoolScheduler.pm6:242 (/home/dogbert/.rakudobrew/versions/moar-2021.12/install/share/perl6/runtime/CORE.c.setting.moarvm:run-one)
from SETTING::src/core.c/ThreadPoolScheduler.pm6:284 (/home/dogbert/.rakudobrew/versions/moar-2021.12/install/share/perl6/runtime/CORE.c.setting.moarvm:)
from SETTING::src/core.c/Thread.pm6:58 (/home/dogbert/.rakudobrew/versions/moar-2021.12/install/share/perl6/runtime/CORE.c.setting.moarvm:THREAD-ENTRY)
$1 = void
(gdb)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment