Skip to content

Instantly share code, notes, and snippets.

@dogbert17
Created October 16, 2016 10:11
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/f3482b996d3dd04887f678728699fcec to your computer and use it in GitHub Desktop.
Save dogbert17/f3482b996d3dd04887f678728699fcec to your computer and use it in GitHub Desktop.
Invalid reads in t/04-nativecall/08-callbacks.t
dogbert@dogbert-VirtualBox ~/repos/rakudo $ ./perl6-valgrind-m t/04-nativecall/08-callbacks.t
================================================================================================
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.10.2.gb.744.de.3 built on MoarVM version 2016.10,
running on ubuntu (14.04.3.LTS.Trusty.Tahr) / linux (3.19.0.32.generic)
------------------------------------------------------------------------------------------------
==32749== Memcheck, a memory error detector
==32749== Copyright (C) 2002-2013, and GNU GPL'd, by Julian Seward et al.
==32749== Using Valgrind-3.10.1 and LibVEX; rerun with -h for copyright info
==32749== 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/perl6.moarvm t/04-nativecall/08-callbacks.t
==32749==
1..8
ok 1 - simple callback
==32749== Invalid read of size 4
==32749== at 0x41CC6E8: ??? (in /home/dogbert/repos/rakudo/install/lib/libmoar.so)
==32749== Address 0xbeee3c34 is on thread 1's stack
==32749== 12 bytes below stack pointer
==32749==
==32749== Invalid read of size 4
==32749== at 0x41CC6F2: ??? (in /home/dogbert/repos/rakudo/install/lib/libmoar.so)
==32749== Address 0xbeee3c38 is on thread 1's stack
==32749== 4 bytes below stack pointer
==32749==
==32749== Invalid read of size 4
==32749== at 0x41CC6FD: ??? (in /home/dogbert/repos/rakudo/install/lib/libmoar.so)
==32749== by 0x41CBE89: ??? (in /home/dogbert/repos/rakudo/install/lib/libmoar.so)
==32749== by 0x41CB886: dc_callvm_call_x86_cdecl (in /home/dogbert/repos/rakudo/install/lib/libmoar.so)
==32749== by 0x41CB45B: dcCallVoid (in /home/dogbert/repos/rakudo/install/lib/libmoar.so)
==32749== by 0x410B57B: MVM_nativecall_invoke (nativecall_dyncall.c:584)
==32749== by 0x40DC5A6: MVM_interp_run (interp.c:3955)
==32749== by 0x41C8D9C: MVM_vm_run_file (moar.c:304)
==32749== by 0x8048EA5: main (main.c:191)
==32749== Address 0xbeee3c18 is on thread 1's stack
==32749== 36 bytes below stack pointer
==32749==
==32749== Invalid read of size 4
==32749== at 0x41CC6FF: ??? (in /home/dogbert/repos/rakudo/install/lib/libmoar.so)
==32749== by 0x41CBE89: ??? (in /home/dogbert/repos/rakudo/install/lib/libmoar.so)
==32749== by 0x41CB886: dc_callvm_call_x86_cdecl (in /home/dogbert/repos/rakudo/install/lib/libmoar.so)
==32749== by 0x41CB45B: dcCallVoid (in /home/dogbert/repos/rakudo/install/lib/libmoar.so)
==32749== by 0x410B57B: MVM_nativecall_invoke (nativecall_dyncall.c:584)
==32749== by 0x40DC5A6: MVM_interp_run (interp.c:3955)
==32749== by 0x41C8D9C: MVM_vm_run_file (moar.c:304)
==32749== by 0x8048EA5: main (main.c:191)
==32749== Address 0xbeee3c1c is on thread 1's stack
==32749== 32 bytes below stack pointer
==32749==
ok 2 - int callback argument
ok 3 - string callback argument
ok 4 - struct callback string argument
ok 5 - struct callback int argument
==32749== Invalid read of size 8
==32749== at 0x41CC706: ??? (in /home/dogbert/repos/rakudo/install/lib/libmoar.so)
==32749== by 0x41CBE89: ??? (in /home/dogbert/repos/rakudo/install/lib/libmoar.so)
==32749== by 0x41CB886: dc_callvm_call_x86_cdecl (in /home/dogbert/repos/rakudo/install/lib/libmoar.so)
==32749== by 0x41CB4D7: dcCallInt (in /home/dogbert/repos/rakudo/install/lib/libmoar.so)
==32749== by 0x410B615: MVM_nativecall_invoke (nativecall_dyncall.c:584)
==32749== by 0x40DC5A6: MVM_interp_run (interp.c:3955)
==32749== by 0x41C8D9C: MVM_vm_run_file (moar.c:304)
==32749== by 0x8048EA5: main (main.c:191)
==32749== Address 0xbeee3c08 is on thread 1's stack
==32749== 36 bytes below stack pointer
==32749==
ok 6 - callback returned a float to C
==32749== Invalid read of size 4
==32749== at 0x41CC6FD: ??? (in /home/dogbert/repos/rakudo/install/lib/libmoar.so)
==32749== by 0x41CBE89: ??? (in /home/dogbert/repos/rakudo/install/lib/libmoar.so)
==32749== by 0x41CB886: dc_callvm_call_x86_cdecl (in /home/dogbert/repos/rakudo/install/lib/libmoar.so)
==32749== by 0x41CB4D7: dcCallInt (in /home/dogbert/repos/rakudo/install/lib/libmoar.so)
==32749== by 0x410B615: MVM_nativecall_invoke (nativecall_dyncall.c:584)
==32749== by 0x40DC5A6: MVM_interp_run (interp.c:3955)
==32749== by 0x41C8D9C: MVM_vm_run_file (moar.c:304)
==32749== by 0x8048EA5: main (main.c:191)
==32749== Address 0xbeee3bf8 is on thread 1's stack
==32749== 36 bytes below stack pointer
==32749==
==32749== Invalid read of size 4
==32749== at 0x41CC6FF: ??? (in /home/dogbert/repos/rakudo/install/lib/libmoar.so)
==32749== by 0x41CBE89: ??? (in /home/dogbert/repos/rakudo/install/lib/libmoar.so)
==32749== by 0x41CB886: dc_callvm_call_x86_cdecl (in /home/dogbert/repos/rakudo/install/lib/libmoar.so)
==32749== by 0x41CB4D7: dcCallInt (in /home/dogbert/repos/rakudo/install/lib/libmoar.so)
==32749== by 0x410B615: MVM_nativecall_invoke (nativecall_dyncall.c:584)
==32749== by 0x40DC5A6: MVM_interp_run (interp.c:3955)
==32749== by 0x41C8D9C: MVM_vm_run_file (moar.c:304)
==32749== by 0x8048EA5: main (main.c:191)
==32749== Address 0xbeee3bfc is on thread 1's stack
==32749== 32 bytes below stack pointer
==32749==
ok 7 - callback returned a string to C
ok 8 - callback returned a struct to C
==32749==
==32749== HEAP SUMMARY:
==32749== in use at exit: 153,766 bytes in 4,656 blocks
==32749== total heap usage: 419,412 allocs, 414,756 frees, 113,692,231 bytes allocated
==32749==
==32749== LEAK SUMMARY:
==32749== definitely lost: 5,639 bytes in 196 blocks
==32749== indirectly lost: 14,435 bytes in 677 blocks
==32749== possibly lost: 120,032 bytes in 3,751 blocks
==32749== still reachable: 13,660 bytes in 32 blocks
==32749== suppressed: 0 bytes in 0 blocks
==32749== Rerun with --leak-check=full to see details of leaked memory
==32749==
==32749== For counts of detected and suppressed errors, rerun with: -v
==32749== ERROR SUMMARY: 27 errors from 7 contexts (suppressed: 0 from 0)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment