Skip to content

Instantly share code, notes, and snippets.

@dogbert17
Created October 9, 2017 15:04
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/cbc788517619a11423dbb001701f571d to your computer and use it in GitHub Desktop.
Save dogbert17/cbc788517619a11423dbb001701f571d to your computer and use it in GitHub Desktop.
Strange SEGV
dogbert@dogbert-VirtualBox ~/repos/rakudo $ MVM_SPESH_BLOCKING=1 ./perl6-valgrind-m t/spec/S17-lowlevel/semaphore.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.
Valgrind options can be added with MVM_VALGRIND_OPTS environment variable.
This Rakudo version is 2017.09.356.g.56.eef.6967 built on MoarVM version 2017.09.1.575.gd.4.e.230.a.6,
running on ubuntu (14.04.3.LTS.Trusty.Tahr) / linux (3.19.0.32.generic)
------------------------------------------------------------------------------------------------
==20681== Memcheck, a memory error detector
==20681== Copyright (C) 2002-2013, and GNU GPL'd, by Julian Seward et al.
==20681== Using Valgrind-3.10.1 and LibVEX; rerun with -h for copyright info
==20681== Command: /home/dogbert/repos/rakudo/install/bin/moar --execname=./perl6-valgrind-m --libpath=. --libpath=blib --libpath=/home/dogbert/repos/rakudo/install/share/nqp/lib --libpath=/home/dogbert/repos/rakudo/install/share/nqp/lib /home/dogbert/repos/rakudo/perl6.moarvm --nqp-lib=blib t/spec/S17-lowlevel/semaphore.t
==20681==
1..2
ok 1 - Sempahore protected addition and we got the correct result
==20681== Thread 4:
==20681== Invalid read of size 4
==20681== at 0x4101DC0: MVM_frame_effective_bytecode (compile.h:59)
==20681== by 0x4101DC0: remove_one_frame (frame.c:806)
==20681== by 0x4101DC0: MVM_frame_try_return (frame.c:895)
==20681== by 0x40F1B2C: MVM_interp_run (interp.c:486)
==20681== by 0x41059E3: start_thread (threads.c:85)
==20681== by 0x4730F71: start_thread (pthread_create.c:312)
==20681== by 0x46213ED: clone (clone.S:129)
==20681== Address 0x10 is not stack'd, malloc'd or (recently) free'd
==20681==
==20681==
==20681== Process terminating with default action of signal 11 (SIGSEGV)
==20681== Access not within mapped region at address 0x10
==20681== at 0x4101DC0: MVM_frame_effective_bytecode (compile.h:59)
==20681== by 0x4101DC0: remove_one_frame (frame.c:806)
==20681== by 0x4101DC0: MVM_frame_try_return (frame.c:895)
==20681== by 0x40F1B2C: MVM_interp_run (interp.c:486)
==20681== by 0x41059E3: start_thread (threads.c:85)
==20681== by 0x4730F71: start_thread (pthread_create.c:312)
==20681== by 0x46213ED: clone (clone.S:129)
==20681== If you believe this happened as a result of a stack
==20681== overflow in your program's main thread (unlikely but
==20681== possible), you can try to increase the size of the
==20681== main thread stack using the --main-stacksize= flag.
==20681== The main thread stack size used in this run was 8388608.
==20681==
==20681== HEAP SUMMARY:
==20681== in use at exit: 81,484,219 bytes in 267,683 blocks
==20681== total heap usage: 772,311 allocs, 504,628 frees, 256,083,617 bytes allocated
==20681==
==20681== LEAK SUMMARY:
==20681== definitely lost: 80,324 bytes in 3,305 blocks
==20681== indirectly lost: 988 bytes in 36 blocks
==20681== possibly lost: 113,872 bytes in 3,553 blocks
==20681== still reachable: 81,289,035 bytes in 260,789 blocks
==20681== suppressed: 0 bytes in 0 blocks
==20681== Rerun with --leak-check=full to see details of leaked memory
==20681==
==20681== For counts of detected and suppressed errors, rerun with: -v
==20681== ERROR SUMMARY: 1 errors from 1 contexts (suppressed: 0 from 0)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment