Created
December 8, 2016 15:13
-
-
Save dogbert17/034403915825b39206d38ed5ea54efd6 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
dogbert@dogbert-VirtualBox ~/repos/rakudo $ ./perl6-valgrind-m ~/test.pl6 | |
================================================================================================ | |
This is Rakudo Perl 6 running in valgrind, a tool for debugging and profiling programs. | |
Running a program in valgrind usually takes *a lot* more time than running it directly, | |
so please be patient. | |
This Rakudo version is 2016.11.161.g.08.ccbbbd.7 built on MoarVM version 2016.11.41.gd.2139.b.52, | |
running on ubuntu (14.04.3.LTS.Trusty.Tahr) / linux (3.19.0.32.generic) | |
------------------------------------------------------------------------------------------------ | |
==15968== Memcheck, a memory error detector | |
==15968== Copyright (C) 2002-2013, and GNU GPL'd, by Julian Seward et al. | |
==15968== Using Valgrind-3.10.1 and LibVEX; rerun with -h for copyright info | |
==15968== Command: /home/dogbert/repos/rakudo/install/bin/moar --full-cleanup --execname=./perl6-valgrind-m --libpath=/home/dogbert/repos/rakudo/install/share/nqp/lib --libpath=/home/dogbert/repos/rakudo/install/share/nqp/lib --libpath=. /home/dogbert/repos/rakudo/perl6.moarvm --nqp-lib=blib /home/dogbert/test.pl6 | |
==15968== | |
==15968== Invalid write of size 4 | |
==15968== at 0x403087D: memset (in /usr/lib/valgrind/vgpreload_memcheck-x86-linux.so) | |
==15968== by 0x40EC981: allocate_frame (frame.c:218) | |
==15968== by 0x40ED848: MVM_frame_invoke (frame.c:556) | |
==15968== by 0x413AF2F: invoke_handler (MVMCode.c:10) | |
==15968== by 0x40C7C25: MVM_interp_run (interp.c:925) | |
==15968== by 0x41BCD75: MVM_vm_run_file (moar.c:309) | |
==15968== by 0x8048EA5: main (main.c:192) | |
==15968== Address 0x99a4a70 is 0 bytes after a block of size 131,072 alloc'd | |
==15968== at 0x402A17C: malloc (in /usr/lib/valgrind/vgpreload_memcheck-x86-linux.so) | |
==15968== by 0x40F1D76: MVM_malloc (alloc.h:2) | |
==15968== by 0x40F1DC8: create_region (callstack.c:6) | |
==15968== by 0x40F1E3A: MVM_callstack_region_next (callstack.c:24) | |
==15968== by 0x40EC948: allocate_frame (frame.c:215) | |
==15968== by 0x40ED848: MVM_frame_invoke (frame.c:556) | |
==15968== by 0x413AF2F: invoke_handler (MVMCode.c:10) | |
==15968== by 0x40C7C25: MVM_interp_run (interp.c:925) | |
==15968== by 0x41BCD75: MVM_vm_run_file (moar.c:309) | |
==15968== by 0x8048EA5: main (main.c:192) | |
==15968== | |
==15968== Invalid write of size 4 | |
==15968== at 0x40ECA55: allocate_frame (frame.c:236) | |
==15968== by 0x40ED848: MVM_frame_invoke (frame.c:556) | |
==15968== by 0x413AF2F: invoke_handler (MVMCode.c:10) | |
==15968== by 0x40C7C25: MVM_interp_run (interp.c:925) | |
==15968== by 0x41BCD75: MVM_vm_run_file (moar.c:309) | |
==15968== by 0x8048EA5: main (main.c:192) | |
==15968== Address 0x99a4a74 is 4 bytes after a block of size 131,072 alloc'd | |
==15968== at 0x402A17C: malloc (in /usr/lib/valgrind/vgpreload_memcheck-x86-linux.so) | |
==15968== by 0x40F1D76: MVM_malloc (alloc.h:2) | |
==15968== by 0x40F1DC8: create_region (callstack.c:6) | |
==15968== by 0x40F1E3A: MVM_callstack_region_next (callstack.c:24) | |
==15968== by 0x40EC948: allocate_frame (frame.c:215) | |
==15968== by 0x40ED848: MVM_frame_invoke (frame.c:556) | |
==15968== by 0x413AF2F: invoke_handler (MVMCode.c:10) | |
==15968== by 0x40C7C25: MVM_interp_run (interp.c:925) | |
==15968== by 0x41BCD75: MVM_vm_run_file (moar.c:309) | |
==15968== by 0x8048EA5: main (main.c:192) | |
==15968== | |
==15968== Invalid read of size 4 | |
==15968== at 0x40ECA6E: allocate_frame (frame.c:237) | |
==15968== by 0x40ED848: MVM_frame_invoke (frame.c:556) | |
==15968== by 0x413AF2F: invoke_handler (MVMCode.c:10) | |
==15968== by 0x40C7C25: MVM_interp_run (interp.c:925) | |
==15968== by 0x41BCD75: MVM_vm_run_file (moar.c:309) | |
==15968== by 0x8048EA5: main (main.c:192) | |
==15968== Address 0x99a4a74 is 4 bytes after a block of size 131,072 alloc'd | |
==15968== at 0x402A17C: malloc (in /usr/lib/valgrind/vgpreload_memcheck-x86-linux.so) | |
==15968== by 0x40F1D76: MVM_malloc (alloc.h:2) | |
==15968== by 0x40F1DC8: create_region (callstack.c:6) | |
==15968== by 0x40F1E3A: MVM_callstack_region_next (callstack.c:24) | |
==15968== by 0x40EC948: allocate_frame (frame.c:215) | |
==15968== by 0x40ED848: MVM_frame_invoke (frame.c:556) | |
==15968== by 0x413AF2F: invoke_handler (MVMCode.c:10) | |
==15968== by 0x40C7C25: MVM_interp_run (interp.c:925) | |
==15968== by 0x41BCD75: MVM_vm_run_file (moar.c:309) | |
==15968== by 0x8048EA5: main (main.c:192) | |
==15968== | |
==15968== Invalid write of size 2 | |
==15968== at 0x40ECA89: allocate_frame (frame.c:240) | |
==15968== by 0x40ED848: MVM_frame_invoke (frame.c:556) | |
==15968== by 0x413AF2F: invoke_handler (MVMCode.c:10) | |
==15968== by 0x40C7C25: MVM_interp_run (interp.c:925) | |
==15968== by 0x41BCD75: MVM_vm_run_file (moar.c:309) | |
==15968== by 0x8048EA5: main (main.c:192) | |
==15968== Address 0x99a4aea is 6 bytes before a block of size 12 free'd | |
==15968== at 0x402B3D8: free (in /usr/lib/valgrind/vgpreload_memcheck-x86-linux.so) | |
==15968== by 0x415B486: MVM_free (alloc.h:29) | |
==15968== by 0x415B798: late_bound_find_method_return (6model.c:67) | |
==15968== by 0x40EE12D: remove_one_frame (frame.c:842) | |
==15968== by 0x40EE3A2: MVM_frame_try_return (frame.c:906) | |
==15968== by 0x40C4274: MVM_interp_run (interp.c:462) | |
==15968== by 0x41BCD75: MVM_vm_run_file (moar.c:309) | |
==15968== by 0x8048EA5: main (main.c:192) | |
==15968== | |
==15968== Invalid read of size 4 | |
==15968== at 0x40ECA93: allocate_frame (frame.c:243) | |
==15968== by 0x40ED848: MVM_frame_invoke (frame.c:556) | |
==15968== by 0x413AF2F: invoke_handler (MVMCode.c:10) | |
==15968== by 0x40C7C25: MVM_interp_run (interp.c:925) | |
==15968== by 0x41BCD75: MVM_vm_run_file (moar.c:309) | |
==15968== by 0x8048EA5: main (main.c:192) | |
==15968== Address 0x99a4a74 is 4 bytes after a block of size 131,072 alloc'd | |
==15968== at 0x402A17C: malloc (in /usr/lib/valgrind/vgpreload_memcheck-x86-linux.so) | |
==15968== by 0x40F1D76: MVM_malloc (alloc.h:2) | |
==15968== by 0x40F1DC8: create_region (callstack.c:6) | |
==15968== by 0x40F1E3A: MVM_callstack_region_next (callstack.c:24) | |
==15968== by 0x40EC948: allocate_frame (frame.c:215) | |
==15968== by 0x40ED848: MVM_frame_invoke (frame.c:556) | |
==15968== by 0x413AF2F: invoke_handler (MVMCode.c:10) | |
==15968== by 0x40C7C25: MVM_interp_run (interp.c:925) | |
==15968== by 0x41BCD75: MVM_vm_run_file (moar.c:309) | |
==15968== by 0x8048EA5: main (main.c:192) | |
==15968== | |
==15968== Invalid write of size 4 | |
==15968== at 0x40ECAB9: allocate_frame (frame.c:243) | |
==15968== by 0x40ED848: MVM_frame_invoke (frame.c:556) | |
==15968== by 0x413AF2F: invoke_handler (MVMCode.c:10) | |
==15968== by 0x40C7C25: MVM_interp_run (interp.c:925) | |
==15968== by 0x41BCD75: MVM_vm_run_file (moar.c:309) | |
==15968== by 0x8048EA5: main (main.c:192) | |
==15968== Address 0x99a4a78 is 8 bytes after a block of size 131,072 alloc'd | |
==15968== at 0x402A17C: malloc (in /usr/lib/valgrind/vgpreload_memcheck-x86-linux.so) | |
==15968== by 0x40F1D76: MVM_malloc (alloc.h:2) | |
==15968== by 0x40F1DC8: create_region (callstack.c:6) | |
==15968== by 0x40F1E3A: MVM_callstack_region_next (callstack.c:24) | |
==15968== by 0x40EC948: allocate_frame (frame.c:215) | |
==15968== by 0x40ED848: MVM_frame_invoke (frame.c:556) | |
==15968== by 0x413AF2F: invoke_handler (MVMCode.c:10) | |
==15968== by 0x40C7C25: MVM_interp_run (interp.c:925) | |
==15968== by 0x41BCD75: MVM_vm_run_file (moar.c:309) | |
==15968== by 0x8048EA5: main (main.c:192) | |
==15968== | |
==15968== Invalid write of size 4 | |
==15968== at 0x40ECAD4: allocate_frame (frame.c:249) | |
==15968== by 0x40ED848: MVM_frame_invoke (frame.c:556) | |
==15968== by 0x413AF2F: invoke_handler (MVMCode.c:10) | |
==15968== by 0x40C7C25: MVM_interp_run (interp.c:925) | |
==15968== by 0x41BCD75: MVM_vm_run_file (moar.c:309) | |
==15968== by 0x8048EA5: main (main.c:192) | |
==15968== Address 0x99a4af4 is 4 bytes inside a block of size 12 free'd | |
==15968== at 0x402B3D8: free (in /usr/lib/valgrind/vgpreload_memcheck-x86-linux.so) | |
==15968== by 0x415B486: MVM_free (alloc.h:29) | |
==15968== by 0x415B798: late_bound_find_method_return (6model.c:67) | |
==15968== by 0x40EE12D: remove_one_frame (frame.c:842) | |
==15968== by 0x40EE3A2: MVM_frame_try_return (frame.c:906) | |
==15968== by 0x40C4274: MVM_interp_run (interp.c:462) | |
==15968== by 0x41BCD75: MVM_vm_run_file (moar.c:309) | |
==15968== by 0x8048EA5: main (main.c:192) | |
==15968== | |
==15968== Invalid write of size 4 | |
==15968== at 0x40ED87C: MVM_frame_invoke (frame.c:563) | |
==15968== by 0x413AF2F: invoke_handler (MVMCode.c:10) | |
==15968== by 0x40C7C25: MVM_interp_run (interp.c:925) | |
==15968== by 0x41BCD75: MVM_vm_run_file (moar.c:309) | |
==15968== by 0x8048EA5: main (main.c:192) | |
==15968== Address 0x99a4aa8 is 8 bytes inside a block of size 32 free'd | |
==15968== at 0x402B3D8: free (in /usr/lib/valgrind/vgpreload_memcheck-x86-linux.so) | |
==15968== by 0x412E4A6: MVM_free (alloc.h:29) | |
==15968== by 0x412E91F: gc_free (MVMArray.c:81) | |
==15968== by 0x41131E9: MVM_gc_collect_free_nursery_uncopied (collect.c:580) | |
==15968== by 0x410DC62: run_gc (orchestrate.c:342) | |
==15968== by 0x410E000: MVM_gc_enter_from_allocator (orchestrate.c:452) | |
==15968== by 0x410E31D: MVM_gc_allocate_nursery (allocation.c:32) | |
==15968== by 0x410E232: MVM_gc_allocate (allocation.h:13) | |
==15968== by 0x410E381: MVM_gc_allocate_zeroed (allocation.c:49) | |
==15968== by 0x410E52B: MVM_gc_allocate_object (allocation.c:86) | |
==15968== by 0x413514F: allocate (P6opaque.c:60) | |
==15968== by 0x4128C2E: MVM_repr_alloc_init (reprconv.c:13) | |
==15968== | |
==15968== Invalid write of size 4 | |
==15968== at 0x40ED88B: MVM_frame_invoke (frame.c:564) | |
==15968== by 0x413AF2F: invoke_handler (MVMCode.c:10) | |
==15968== by 0x40C7C25: MVM_interp_run (interp.c:925) | |
==15968== by 0x41BCD75: MVM_vm_run_file (moar.c:309) | |
==15968== by 0x8048EA5: main (main.c:192) | |
==15968== Address 0x99a4aac is 12 bytes inside a block of size 32 free'd | |
==15968== at 0x402B3D8: free (in /usr/lib/valgrind/vgpreload_memcheck-x86-linux.so) | |
==15968== by 0x412E4A6: MVM_free (alloc.h:29) | |
==15968== by 0x412E91F: gc_free (MVMArray.c:81) | |
==15968== by 0x41131E9: MVM_gc_collect_free_nursery_uncopied (collect.c:580) | |
==15968== by 0x410DC62: run_gc (orchestrate.c:342) | |
==15968== by 0x410E000: MVM_gc_enter_from_allocator (orchestrate.c:452) | |
==15968== by 0x410E31D: MVM_gc_allocate_nursery (allocation.c:32) | |
==15968== by 0x410E232: MVM_gc_allocate (allocation.h:13) | |
==15968== by 0x410E381: MVM_gc_allocate_zeroed (allocation.c:49) | |
==15968== by 0x410E52B: MVM_gc_allocate_object (allocation.c:86) | |
==15968== by 0x413514F: allocate (P6opaque.c:60) | |
==15968== by 0x4128C2E: MVM_repr_alloc_init (reprconv.c:13) | |
==15968== | |
valgrind: m_mallocfree.c:304 (get_bszB_as_is): Assertion 'bszB_lo == bszB_hi' failed. | |
valgrind: Heap block lo/hi size mismatch: lo = 131120, hi = 0. | |
This is probably caused by your program erroneously writing past the | |
end of a heap block and corrupting heap metadata. If you fix any | |
invalid writes reported by Memcheck, this assertion failure will | |
probably go away. Please try that before reporting this as a bug. | |
host stacktrace: | |
==15968== at 0x3805A504: ??? (in /usr/lib/valgrind/memcheck-x86-linux) | |
==15968== by 0x3805A656: ??? (in /usr/lib/valgrind/memcheck-x86-linux) | |
==15968== by 0x3805A7B9: ??? (in /usr/lib/valgrind/memcheck-x86-linux) | |
==15968== by 0x38068EF2: ??? (in /usr/lib/valgrind/memcheck-x86-linux) | |
==15968== by 0x380533A6: ??? (in /usr/lib/valgrind/memcheck-x86-linux) | |
==15968== by 0x380502DF: ??? (in /usr/lib/valgrind/memcheck-x86-linux) | |
==15968== by 0x38051CD7: ??? (in /usr/lib/valgrind/memcheck-x86-linux) | |
==15968== by 0x38056101: ??? (in /usr/lib/valgrind/memcheck-x86-linux) | |
==15968== by 0x38050F4D: ??? (in /usr/lib/valgrind/memcheck-x86-linux) | |
==15968== by 0x380002C3: ??? (in /usr/lib/valgrind/memcheck-x86-linux) | |
==15968== by 0x38032ED0: ??? (in /usr/lib/valgrind/memcheck-x86-linux) | |
==15968== by 0x62D721CB: ??? | |
sched status: | |
running_tid=1 | |
Thread 1: status = VgTs_Runnable | |
==15968== at 0x40ED8A3: MVM_frame_invoke (frame.c:571) | |
==15968== by 0x413AF2F: invoke_handler (MVMCode.c:10) | |
==15968== by 0x40C7C25: MVM_interp_run (interp.c:925) | |
==15968== by 0x41BCD75: MVM_vm_run_file (moar.c:309) | |
==15968== by 0x8048EA5: main (main.c:192) | |
Note: see also the FAQ in the source distribution. | |
It contains workarounds to several common problems. | |
In particular, if Valgrind aborted or crashed after | |
identifying problems in your program, there's a good chance | |
that fixing those problems will prevent Valgrind aborting or | |
crashing, especially if it happened in m_mallocfree.c. | |
If that doesn't help, please report this bug to: www.valgrind.org | |
In the bug report, send all the above text, the valgrind | |
version, and what OS and version you are using. Thanks. | |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment