Skip Menu |
Report information
Id: 130707
Status: new
Priority: 0/
Queue: perl6

Owner: Nobody
Requestors: robertle [at] semistable.com
Cc:
AdminCc:

Severity: (no value)
Tag: (no value)
Platform: (no value)
Patch Status: (no value)
VM: (no value)



From: Robert Lemmen <robertle [...] semistable.com>
Subject: "double free or corruption" in MVM_profile_instrument
To: rakudobug [...] perl.org
Date: Thu, 2 Feb 2017 22:39:26 +0000
Download (untitled) / with headers
text/plain 3.6k
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
Download signature.asc
application/pgp-signature 833b

Message body not shown because it is not plain text.



This service is sponsored and maintained by Best Practical Solutions and runs on Perl.org infrastructure.

For issues related to this RT instance (aka "perlbug"), please contact perlbug-admin at perl.org