Skip to content

Instantly share code, notes, and snippets.

@dogbert17
Created April 28, 2018 15:40
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/52e8199096df3672236e658affe64b72 to your computer and use it in GitHub Desktop.
Save dogbert17/52e8199096df3672236e658affe64b72 to your computer and use it in GitHub Desktop.
ASAN output with MVM_GC_DEBUG=2
dogbert@dogbert-VirtualBox ~/repos/rakudo $ MVM_SPESH_DISABLE=1 ./perl6 --profile -e '(^∞).hyper.grep(*.is-prime)[500].say; say now - ENTER now'
3581
0.876960
Writing profiler output to profile-1524929944.4027314.html
=================================================================
==9516== ERROR: AddressSanitizer: heap-buffer-overflow on address 0xa6734a0c at pc 0xb51f3970 bp 0x9d277a78 sp 0x9d277a6c
READ of size 2 at 0xa6734a0c thread T4
#0 0xb51f396f in check_reg /home/dogbert/repos/rakudo/nqp/MoarVM/src/core/interp.c:11
#1 0xb51f55fd in MVM_interp_run /home/dogbert/repos/rakudo/nqp/MoarVM/src/core/interp.c:149
#2 0xb52cdc00 in start_thread /home/dogbert/repos/rakudo/nqp/MoarVM/src/core/threads.c:87
#3 0xb612d9c6 (/usr/lib/i386-linux-gnu/libasan.so.0+0x1a9c6)
#4 0xb611d2ac (/usr/lib/i386-linux-gnu/libasan.so.0+0xa2ac)
#5 0xb4e5cf71 in start_thread (/lib/i386-linux-gnu/libpthread.so.0+0x6f71)
#6 0xb4f6043d (/lib/i386-linux-gnu/libc.so.6+0xee43d)
0xa6734a0c is located 2 bytes to the right of 26-byte region [0xa67349f0,0xa6734a0a)
allocated by thread T1 here:
#0 0xb6129854 (/usr/lib/i386-linux-gnu/libasan.so.0+0x16854)
#1 0xb52908ad in MVM_malloc /home/dogbert/repos/rakudo/nqp/MoarVM/src/core/alloc.h:2
#2 0xb5298a6a in MVM_bytecode_finish_frame /home/dogbert/repos/rakudo/nqp/MoarVM/src/core/bytecode.c:610
#3 0xb52a18ca in prepare_and_verify_static_frame /home/dogbert/repos/rakudo/nqp/MoarVM/src/core/frame.c:29
#4 0xb52a2378 in instrumentation_level_barrier /home/dogbert/repos/rakudo/nqp/MoarVM/src/core/frame.c:97
#5 0xb52a62b2 in MVM_frame_invoke /home/dogbert/repos/rakudo/nqp/MoarVM/src/core/frame.c:389
#6 0xb5423ce2 in invoke_handler /home/dogbert/repos/rakudo/nqp/MoarVM/src/6model/reprs/MVMCode.c:10
#7 0xb520993a in MVM_interp_run /home/dogbert/repos/rakudo/nqp/MoarVM/src/core/interp.c:993
#8 0xb52cdc00 in start_thread /home/dogbert/repos/rakudo/nqp/MoarVM/src/core/threads.c:87
#9 0xb612d9c6 (/usr/lib/i386-linux-gnu/libasan.so.0+0x1a9c6)
#10 0xb4f6043d (/lib/i386-linux-gnu/libc.so.6+0xee43d)
Thread T4 created by T2 here:
#0 0xb611d1d0 (/usr/lib/i386-linux-gnu/libasan.so.0+0xa1d0)
#1 0xb56a6980 in uv_thread_create (//home/dogbert/repos/rakudo/nqp/MoarVM/../../install/lib/libmoar.so+0x683980)
Thread T2 created by T0 here:
#0 0xb611d1d0 (/usr/lib/i386-linux-gnu/libasan.so.0+0xa1d0)
#1 0xb56a6980 in uv_thread_create (//home/dogbert/repos/rakudo/nqp/MoarVM/../../install/lib/libmoar.so+0x683980)
Thread T1 created by T0 here:
#0 0xb611d1d0 (/usr/lib/i386-linux-gnu/libasan.so.0+0xa1d0)
#1 0xb56a6980 in uv_thread_create (//home/dogbert/repos/rakudo/nqp/MoarVM/../../install/lib/libmoar.so+0x683980)
SUMMARY: AddressSanitizer: heap-buffer-overflow /home/dogbert/repos/rakudo/nqp/MoarVM/src/core/interp.c:11 check_reg
Shadow bytes around the buggy address:
0x34ce68f0: 00 00 00 00 fa fa 00 00 00 00 fa fa 00 00 00 fa
0x34ce6900: fa fa 00 00 00 fa fa fa 00 00 00 00 fa fa 00 00
0x34ce6910: 00 00 fa fa 00 00 00 00 fa fa 00 00 00 00 fa fa
0x34ce6920: 00 00 00 00 fa fa 00 00 00 00 fa fa 00 00 00 00
0x34ce6930: fa fa 00 00 00 00 fa fa 00 00 00 00 fa fa 00 00
=>0x34ce6940: 00[02]fa fa 00 00 00 fa fa fa 00 00 00 00 fa fa
0x34ce6950: 00 00 00 fa fa fa 00 00 00 00 fa fa 00 00 00 00
0x34ce6960: fa fa 00 00 00 00 fa fa 00 00 00 00 fa fa 00 00
0x34ce6970: 00 00 fa fa 00 00 00 00 fa fa 00 00 00 00 fa fa
0x34ce6980: 00 00 04 fa fa fa 00 00 00 00 fa fa 00 00 00 fa
0x34ce6990: fa fa 00 00 00 fa fa fa 00 00 00 00 fa fa 00 00
Shadow byte legend (one shadow byte represents 8 application bytes):
Addressable: 00
Partially addressable: 01 02 03 04 05 06 07
Heap left redzone: fa
Heap righ redzone: fb
Freed Heap region: fd
Stack left redzone: f1
Stack mid redzone: f2
Stack right redzone: f3
Stack partial redzone: f4
Stack after return: f5
Stack use after scope: f8
Global redzone: f9
Global init order: f6
Poisoned by user: f7
ASan internal: fe
==9516== ABORTING
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment