Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

"double free or corruption" in MVM_profile_instrument #6048

Open
p6rt opened this issue Feb 2, 2017 · 1 comment
Open

"double free or corruption" in MVM_profile_instrument #6048

p6rt opened this issue Feb 2, 2017 · 1 comment

Comments

@p6rt
Copy link

p6rt commented Feb 2, 2017

Migrated from rt.perl.org#130707 (status was 'new')

Searchable as RT130707$

@p6rt
Copy link
Author

p6rt commented Feb 2, 2017

From robertle@semistable.com

a small program​:
------------------------8<----------------------
use v6;

use HTTP​::Server​::Async;
use JSON​::Fast;

my @​data;

for 1..1000 -> $i {
  push @​data, {
  id => $i,
  name => "identifier-$i",
  contents => [ $i - 12 .. $i] };
}

my $s = HTTP​::Server​::Async.new(port => 8080);
my $count = 0;

$s.handler(sub ($request, $response) {
  my ($a, $b, $id) = split('/', $request.uri);
  say '# ' ~ $*THREAD.id ~ ' ' ~ $id;
  $response.headers<Content-Type> = 'application/json';
  $response.status = 200;
  $response.write(to-json(@​data.[$id]));
  $response.close();
  $count++;
  if ($count > 100) {
  say "all done!";
  exit(0);
  }
  return False;
});

say "starting...";
$s.listen(True);
------------------------>8----------------------

which I then torture with "siege". under normal conditions this works
fine, but if I run perl6 with --profile, it falls over with​:

*** Error in
`/home/robertle/perl6env/rakudobrew/moar-nom/install/bin/moar'​: double
free or corruption (fasttop)​: 0x00007efee01487a0 ***
======= Backtrace​: =========
/lib/x86_64-linux-gnu/libc.so.6(+0x70bcb)[0x7eff01aa1bcb]
/lib/x86_64-linux-gnu/libc.so.6(+0x76fa6)[0x7eff01aa7fa6]
/lib/x86_64-linux-gnu/libc.so.6(+0x7779e)[0x7eff01aa879e]
//home/robertle/perl6env/rakudobrew/moar-nom/install/lib/libmoar.so(MVM_profile_instrument+0x2eb)[0x7eff020034fb]
//home/robertle/perl6env/rakudobrew/moar-nom/install/lib/libmoar.so(MVM_frame_invoke+0xc9)[0x7eff01f5cb29]
//home/robertle/perl6env/rakudobrew/moar-nom/install/lib/libmoar.so(+0x1ca1f3)[0x7eff01f991f3]
//home/robertle/perl6env/rakudobrew/moar-nom/install/lib/libmoar.so(MVM_interp_run+0xf84f)[0x7eff01f532ef]
//home/robertle/perl6env/rakudobrew/moar-nom/install/lib/libmoar.so(+0x194e7e)[0x7eff01f63e7e]
//home/robertle/perl6env/rakudobrew/moar-nom/install/lib/libmoar.so(+0x258917)[0x7eff02027917]
/lib/x86_64-linux-gnu/libpthread.so.0(+0x7464)[0x7eff01517464]
/lib/x86_64-linux-gnu/libc.so.6(clone+0x5f)[0x7eff01b199df]
======= Memory map​: ========
560ea957c000-560ea957e000 r-xp 00000000 103​:01 11536496
/home/robertle/perl6env/rakudobrew/moar-nom/install/bin/moar
560ea977d000-560ea977e000 r--p 00001000 103​:01 11536496
/home/robertle/perl6env/rakudobrew/moar-nom/install/bin/moar
560ea977e000-560ea977f000 rw-p 00002000 103​:01 11536496
/home/robertle/perl6env/rakudobrew/moar-nom/install/bin/moar
560eaad32000-560eae757000 rw-p 00000000 00​:00 0
[heap]
7efeb4000000-7efeb4021000 rw-p 00000000 00​:00 0
7efeb4021000-7efeb8000000 ---p 00000000 00​:00 0
7efebc000000-7efebc05f000 rw-p 00000000 00​:00 0
7efebc05f000-7efec0000000 ---p 00000000 00​:00 0
7efec0000000-7efec0060000 rw-p 00000000 00​:00 0
7efec0060000-7efec4000000 ---p 00000000 00​:00 0
7efec4000000-7efec40ec000 rw-p 00000000 00​:00 0
7efec40ec000-7efec8000000 ---p 00000000 00​:00 0
7efec8000000-7efec8074000 rw-p 00000000 00​:00 0
7efec8074000-7efecc000000 ---p 00000000 00​:00 0
7efecc000000-7efecc11a000 rw-p 00000000 00​:00 0
7ef from <unknown>​:1
(/home/robertle/perl6env/rakudobrew/moar-nom/install/share/perl6/runtime/CORE.setting.moarvm​:protect)
from SETTING​::src/core/Supply.pm​:174
(/home/robertle/perl6env/rakudobrew/moar-nom/install/share/perl6/runtime/CORE.setting.moarvm​:)
from SETTING​::src/core/Supply.pm​:1431
(/home/robertle/perl6env/rakudobrew/moar-nom/install/share/perl6/runtime/CORE.setting.moarvm​:)
from SETTING​::src/core/Supply.pm​:1428
(/home/robertle/perl6env/rakudobrew/moar-nom/install/share/perl6/runtime/CORE.setting.moarvm​:emit)

my perl is rakudo 017.01-55-g49e2d40a4, moar 2017.01-13-g4aab5064,
4.8.0-2-amd64 linux

regards robert

--
Robert Lemmen http://www.semistable.com

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant