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

MoarVM panic: Internal error: zeroed target thread ID in work pass #800

Closed
domq opened this issue Feb 10, 2018 · 7 comments
Closed

MoarVM panic: Internal error: zeroed target thread ID in work pass #800

domq opened this issue Feb 10, 2018 · 7 comments

Comments

@domq
Copy link

domq commented Feb 10, 2018

The attached script bugreport.pl.txt crashes most of the time with the error message in the issue's title, but something with others (see below). May or may not be related to #473.

My platform: Mac OS X Sierra 10.12.6, perl6 from homebrew.

Mac:~$ perl6 --version
This is Rakudo Star version 2018.01 built on MoarVM version 2018.01
implementing Perl 6.c.

I unfortunately have no idea how to determine the version of Gumbo and XML::XPath that I have installed (this turns up nothing); but I installed both with zef minutes ago.

More version info:

Mac:~$ brew info gumbo-parser
gumbo-parser: stable 0.10.1 (bottled)
C99 library for parsing HTML5
https://github.com/google/gumbo-parser
/usr/local/Cellar/gumbo-parser/0.10.1 (10 files, 754.8KB) *
  Poured from bottle on 2018-02-10 at 10:27:34
From: https://github.com/Homebrew/homebrew-core/blob/master/Formula/gumbo-parser.rb
Mac:~$ brew info libxml2
libxml2: stable 2.9.7 (bottled), HEAD [keg-only]
GNOME XML library
http://xmlsoft.org
/usr/local/Cellar/libxml2/2.9.4_2 (277 files, 9.8MB)
  Poured from bottle on 2017-05-17 at 14:18:56
/usr/local/Cellar/libxml2/2.9.4_3 (281 files, 10.4MB)
  Poured from bottle on 2017-07-03 at 20:06:46
/usr/local/Cellar/libxml2/2.9.7 (281 files, 10.4MB)
  Poured from bottle on 2017-11-15 at 14:52:17
From: https://github.com/Homebrew/homebrew-core/blob/master/Formula/libxml2.rb
==> Options
--HEAD
	Install HEAD version
[snip]

The results of running the script 10 times on my platform:

Mac:~$ for i in $(seq 1 10); do perl6 ./bugreport.pl ; done
Parsed
MoarVM panic: Internal error: zeroed target thread ID in work pass
Parsed
Type check failed in binding to parameter '$start'; expected XML::Node but got Array ($[(my \XML::Element_1...)
  in method find at /usr/local/Cellar/rakudo-star/2018.01/share/perl6/site/sources/E7C0BBCF69DD5CBC21DBD7027015325F83FADE11 (XML::XPath) line 25
  in block <unit> at ./bugreport.pl line 11

Parsed
MoarVM panic: Internal error: zeroed target thread ID in work pass
Parsed
MoarVM panic: Internal error: zeroed target thread ID in work pass
Parsed
MoarVM panic: Internal error: zeroed target thread ID in work pass
Parsed
MoarVM panic: Internal error: invalid thread ID 123188480 in GC work pass
Parsed
MoarVM panic: Internal error: invalid thread ID 55050241 in GC work pass
Parsed
MoarVM panic: Internal error: zeroed target thread ID in work pass
Parsed
MoarVM panic: Internal error: invalid thread ID 223219303 in GC work pass
Parsed
MoarVM panic: Heap corruption detected: pointer 0x1093028f0 to past fromspace
@coke
Copy link
Collaborator

coke commented Feb 10, 2018

zef info will tell you the version

@coke
Copy link
Collaborator

coke commented Feb 10, 2018

Zef info modulename

@domq
Copy link
Author

domq commented Feb 11, 2018

Mac:~$ zef info Gumbo
- Info for: Gumbo
- Identity: Gumbo:auth<Sylvain Colinet>
- Recommended By: /usr/local/Cellar/rakudo-star/2018.01/share/perl6/site
Description:	 Binding of the gumbo C library, a html parser lib
License:	 Artistic-2.0
Source-url:	 git://github.com/Skarsnik/perl6-gumbo.git
Provides: 3 modules
Depends: 1 items
Mac:~$ zef info XML::XPath
- Info for: XML::XPath
- Identity: XML::XPath:ver<0.9.0>
- Recommended By: /usr/local/Cellar/rakudo-star/2018.01/share/perl6/site
Description:	 XPath perl6 library
License:	 Artistic-2.0
Source-url:	 git://github.com/ufobat/p6-XML-XPath.git
Provides: 27 modules
Depends: 2 items

@dogbert17
Copy link
Contributor

dogbert17 commented Feb 15, 2018

running the example under gdb, on a 32 bit vm, yields the following. Note that MVM_GC_DEBUG was set to 2:

Starting program: /home/dogbert/.rakudobrew/moar-master/install/bin/moar --execname=/home/dogbert/.rakudobrew/bin/../moar-master/install/bin/perl6-gdb-m --libpath=/home/dogbert/.rakudobrew/moar-master/install/share/nqp/lib --libpath=/home/dogbert/.rakudobrew/moar-master/install/share/perl6/lib --libpath=/home/dogbert/.rakudobrew/moar-master/install/share/perl6/runtime /home/dogbert/.rakudobrew/moar-master/install/share/perl6/runtime/perl6.moarvm test.pl6
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/i386-linux-gnu/libthread_db.so.1".
[New Thread 0xb73f2b40 (LWP 10923)]
Parsed

Breakpoint 1, MVM_panic (exitCode=1, messageFormat=0xb7cb1034 "Invalid owner in item added to GC worklist") at src/core/exceptions.c:826
826	    fprintf(stderr, "MoarVM panic: ");
(gdb) bt
#0  MVM_panic (exitCode=1, messageFormat=0xb7cb1034 "Invalid owner in item added to GC worklist") at src/core/exceptions.c:826
#1  0xb7bf4942 in gc_mark (tc=0x804c5f8, st=0x9eaae40, data=0xac88ad8, worklist=0xb939f88) at src/6model/reprs/CStruct.c:623
#2  0xb7baa2f0 in MVM_gc_mark_collectable (tc=0x804c5f8, worklist=0xb939f88, new_addr=0xac88ac8) at src/gc/collect.c:427
#3  0xb7ba8560 in process_worklist (tc=0x804c5f8, worklist=0xb939f88, wtp=0xbfffd558, gen=1 '\001') at src/gc/collect.c:341
#4  0xb7ba7ddd in MVM_gc_collect (tc=0x804c5f8, what_to_do=0 '\000', gen=1 '\001') at src/gc/collect.c:114
#5  0xb7ba1346 in run_gc (tc=0x804c5f8, what_to_do=0 '\000') at src/gc/orchestrate.c:369
#6  0xb7ba174c in MVM_gc_enter_from_allocator (tc=0x804c5f8) at src/gc/orchestrate.c:486
#7  0xb7ba1ba1 in MVM_gc_allocate_nursery (tc=0x804c5f8, size=112) at src/gc/allocation.c:32
#8  0xb7ba1ab6 in MVM_gc_allocate (tc=0x804c5f8, size=112) at src/gc/allocation.h:13
#9  0xb7ba1c09 in MVM_gc_allocate_zeroed (tc=0x804c5f8, size=112) at src/gc/allocation.c:49
#10 0xb7ba2017 in MVM_gc_allocate_frame (tc=0x804c5f8) at src/gc/allocation.c:99
#11 0xb7b7cbff in MVM_frame_move_to_heap (tc=0x804c5f8, frame=0xb7435018) at src/core/frame.c:624
#12 0xb7b7acfb in MVM_frame_force_to_heap (tc=0x804c5f8, frame=0xb7435018) at src/core/frame.h:193
#13 0xb7b7df0a in MVM_frame_capturelex (tc=0x804c5f8, code=0x8a20120) at src/core/frame.c:997
#14 0xb7b48e50 in MVM_interp_run (tc=0x804c5f8, initial_invoke=0xb7c78237 <toplevel_initial_invoke>, invoke_data=0x8096cc0) at src/core/interp.c:1181
#15 0xb7c78396 in MVM_vm_run_file (instance=0x804c008, filename=0xbffff2bf "/home/dogbert/.rakudobrew/moar-master/install/share/perl6/runtime/perl6.moarvm") at src/moar.c:407
#16 0x08048ff6 in main (argc=7, argv=0xbfffef74) at src/main.c:256
(gdb) f 1
#1  0xb7bf4942 in gc_mark (tc=0x804c5f8, st=0x9eaae40, data=0xac88ad8, worklist=0xb939f88) at src/6model/reprs/CStruct.c:623
623	        MVM_gc_worklist_add(tc, worklist, &body->child_objs[i]);
(gdb) p MVM_dump_backtrace(tc)
   at SETTING::src/core/Rakudo/Internals.pm:722  (/home/dogbert/.rakudobrew/moar-master/install/share/perl6/runtime/CORE.setting.moarvm:PERLIFY-STR)
 from SETTING::src/core/Str.pm:335  (/home/dogbert/.rakudobrew/moar-master/install/share/perl6/runtime/CORE.setting.moarvm:perl)
 from <unknown>:1  (/home/dogbert/.rakudobrew/moar-master/install/share/perl6/runtime/CORE.setting.moarvm:)
 from <unknown>:1  (/home/dogbert/.rakudobrew/moar-master/install/share/perl6/runtime/CORE.setting.moarvm:)
 from SETTING::src/core/Mu.pm:626  (/home/dogbert/.rakudobrew/moar-master/install/share/perl6/runtime/CORE.setting.moarvm:)
 from <unknown>:1  (/home/dogbert/.rakudobrew/moar-master/install/share/perl6/runtime/CORE.setting.moarvm:)
 from SETTING::src/core/Mu.pm:612  (/home/dogbert/.rakudobrew/moar-master/install/share/perl6/runtime/CORE.setting.moarvm:perlseen)
 from <unknown>:1  (/home/dogbert/.rakudobrew/moar-master/install/share/perl6/runtime/CORE.setting.moarvm:perl)
 from SETTING::src/core/Array.pm:1228  (/home/dogbert/.rakudobrew/moar-master/install/share/perl6/runtime/CORE.setting.moarvm:)
 from SETTING::src/core/Any-iterable-methods.pm:369  (/home/dogbert/.rakudobrew/moar-master/install/share/perl6/runtime/CORE.setting.moarvm:pull-one)
 from SETTING::src/core/Seq.pm:116  (/home/dogbert/.rakudobrew/moar-master/install/share/perl6/runtime/CORE.setting.moarvm:join)
 from SETTING::src/core/Array.pm:1226  (/home/dogbert/.rakudobrew/moar-master/install/share/perl6/runtime/CORE.setting.moarvm:)
 from SETTING::src/core/Mu.pm:626  (/home/dogbert/.rakudobrew/moar-master/install/share/perl6/runtime/CORE.setting.moarvm:)
 from <unknown>:1  (/home/dogbert/.rakudobrew/moar-master/install/share/perl6/runtime/CORE.setting.moarvm:)
 from SETTING::src/core/Mu.pm:612  (/home/dogbert/.rakudobrew/moar-master/install/share/perl6/runtime/CORE.setting.moarvm:perlseen)
 from <unknown>:1  (/home/dogbert/.rakudobrew/moar-master/install/share/perl6/runtime/CORE.setting.moarvm:perl)
 from <unknown>:1  (/home/dogbert/.rakudobrew/moar-master/install/share/perl6/runtime/CORE.setting.moarvm:)
 from <unknown>:1  (/home/dogbert/.rakudobrew/moar-master/install/share/perl6/runtime/CORE.setting.moarvm:)
 from SETTING::src/core/Mu.pm:626  (/home/dogbert/.rakudobrew/moar-master/install/share/perl6/runtime/CORE.setting.moarvm:)
 from <unknown>:1  (/home/dogbert/.rakudobrew/moar-master/install/share/perl6/runtime/CORE.setting.moarvm:)
 from SETTING::src/core/Mu.pm:612  (/home/dogbert/.rakudobrew/moar-master/install/share/perl6/runtime/CORE.setting.moarvm:perlseen)
 from <unknown>:1  (/home/dogbert/.rakudobrew/moar-master/install/share/perl6/runtime/CORE.setting.moarvm:perl)
 from SETTING::src/core/Array.pm:1228  (/home/dogbert/.rakudobrew/moar-master/install/share/perl6/runtime/CORE.setting.moarvm:)
 from SETTING::src/core/Any-iterable-methods.pm:369  (/home/dogbert/.rakudobrew/moar-master/install/share/perl6/runtime/CORE.setting.moarvm:pull-one)
 from SETTING::src/core/Seq.pm:116  (/home/dogbert/.rakudobrew/moar-master/install/share/perl6/runtime/CORE.setting.moarvm:join)
 from SETTING::src/core/Array.pm:1226  (/home/dogbert/.rakudobrew/moar-master/install/share/perl6/runtime/CORE.setting.moarvm:)
 from SETTING::src/core/Mu.pm:626  (/home/dogbert/.rakudobrew/moar-master/install/share/perl6/runtime/CORE.setting.moarvm:)
 from <unknown>:1  (/home/dogbert/.rakudobrew/moar-master/install/share/perl6/runtime/CORE.setting.moarvm:)
 from SETTING::src/core/Mu.pm:612  (/home/dogbert/.rakudobrew/moar-master/install/share/perl6/runtime/CORE.setting.moarvm:perlseen)
 from <unknown>:1  (/home/dogbert/.rakudobrew/moar-master/install/share/perl6/runtime/CORE.setting.moarvm:perl)
 from <unknown>:1  (/home/dogbert/.rakudobrew/moar-master/install/share/perl6/runtime/CORE.setting.moarvm:)
 from <unknown>:1  (/home/dogbert/.rakudobrew/moar-master/install/share/perl6/runtime/CORE.setting.moarvm:)
 from SETTING::src/core/Mu.pm:626  (/home/dogbert/.rakudobrew/moar-master/install/share/perl6/runtime/CORE.setting.moarvm:)
 from <unknown>:1  (/home/dogbert/.rakudobrew/moar-master/install/share/perl6/runtime/CORE.setting.moarvm:)
 from SETTING::src/core/Mu.pm:612  (/home/dogbert/.rakudobrew/moar-master/install/share/perl6/runtime/CORE.setting.moarvm:perlseen)
 from <unknown>:1  (/home/dogbert/.rakudobrew/moar-master/install/share/perl6/runtime/CORE.setting.moarvm:perl)
 from SETTING::src/core/Array.pm:1228  (/home/dogbert/.rakudobrew/moar-master/install/share/perl6/runtime/CORE.setting.moarvm:)
 from SETTING::src/core/Any-iterable-methods.pm:369  (/home/dogbert/.rakudobrew/moar-master/install/share/perl6/runtime/CORE.setting.moarvm:pull-one)
 from SETTING::src/core/Seq.pm:116  (/home/dogbert/.rakudobrew/moar-master/install/share/perl6/runtime/CORE.setting.moarvm:join)
 from SETTING::src/core/Array.pm:1226  (/home/dogbert/.rakudobrew/moar-master/install/share/perl6/runtime/CORE.setting.moarvm:)
 from SETTING::src/core/Mu.pm:626  (/home/dogbert/.rakudobrew/moar-master/install/share/perl6/runtime/CORE.setting.moarvm:)
 from <unknown>:1  (/home/dogbert/.rakudobrew/moar-master/install/share/perl6/runtime/CORE.setting.moarvm:)
 from SETTING::src/core/Mu.pm:612  (/home/dogbert/.rakudobrew/moar-master/install/share/perl6/runtime/CORE.setting.moarvm:perlseen)
 from <unknown>:1  (/home/dogbert/.rakudobrew/moar-master/install/share/perl6/runtime/CORE.setting.moarvm:perl)
 from <unknown>:1  (/home/dogbert/.rakudobrew/moar-master/install/share/perl6/runtime/CORE.setting.moarvm:)
 from <unknown>:1  (/home/dogbert/.rakudobrew/moar-master/install/share/perl6/runtime/CORE.setting.moarvm:)
 from SETTING::src/core/Mu.pm:626  (/home/dogbert/.rakudobrew/moar-master/install/share/perl6/runtime/CORE.setting.moarvm:)
 from <unknown>:1  (/home/dogbert/.rakudobrew/moar-master/install/share/perl6/runtime/CORE.setting.moarvm:)
 from SETTING::src/core/Mu.pm:612  (/home/dogbert/.rakudobrew/moar-master/install/share/perl6/runtime/CORE.setting.moarvm:perlseen)
 from <unknown>:1  (/home/dogbert/.rakudobrew/moar-master/install/share/perl6/runtime/CORE.setting.moarvm:perl)
 from <unknown>:1  (/home/dogbert/.rakudobrew/moar-master/install/share/perl6/runtime/CORE.setting.moarvm:)
 from <unknown>:1  (/home/dogbert/.rakudobrew/moar-master/install/share/perl6/runtime/CORE.setting.moarvm:)
 from SETTING::src/core/Mu.pm:626  (/home/dogbert/.rakudobrew/moar-master/install/share/perl6/runtime/CORE.setting.moarvm:)
 from <unknown>:1  (/home/dogbert/.rakudobrew/moar-master/install/share/perl6/runtime/CORE.setting.moarvm:)
 from SETTING::src/core/Mu.pm:612  (/home/dogbert/.rakudobrew/moar-master/install/share/perl6/runtime/CORE.setting.moarvm:perlseen)
 from <unknown>:1  (/home/dogbert/.rakudobrew/moar-master/install/share/perl6/runtime/CORE.setting.moarvm:perl)
 from SETTING::src/core/Array.pm:1228  (/home/dogbert/.rakudobrew/moar-master/install/share/perl6/runtime/CORE.setting.moarvm:)
 from SETTING::src/core/Any-iterable-methods.pm:369  (/home/dogbert/.rakudobrew/moar-master/install/share/perl6/runtime/CORE.setting.moarvm:pull-one)
 from SETTING::src/core/Seq.pm:116  (/home/dogbert/.rakudobrew/moar-master/install/share/perl6/runtime/CORE.setting.moarvm:join)
 from SETTING::src/core/Array.pm:1226  (/home/dogbert/.rakudobrew/moar-master/install/share/perl6/runtime/CORE.setting.moarvm:)
 from SETTING::src/core/Mu.pm:623  (/home/dogbert/.rakudobrew/moar-master/install/share/perl6/runtime/CORE.setting.moarvm:)
 from SETTING::src/core/Mu.pm:619  (/home/dogbert/.rakudobrew/moar-master/install/share/perl6/runtime/CORE.setting.moarvm:)
 from SETTING::src/core/Mu.pm:614  (/home/dogbert/.rakudobrew/moar-master/install/share/perl6/runtime/CORE.setting.moarvm:perlseen)
 from SETTING::src/core/Mu.pm:635  (/home/dogbert/.rakudobrew/moar-master/install/share/perl6/runtime/CORE.setting.moarvm:)
 from SETTING::src/core/Mu.pm:614  (/home/dogbert/.rakudobrew/moar-master/install/share/perl6/runtime/CORE.setting.moarvm:perlseen)
 from SETTING::src/core/Array.pm:1225  (/home/dogbert/.rakudobrew/moar-master/install/share/perl6/runtime/CORE.setting.moarvm:perl)
 from SETTING::src/core/Mu.pm:639  (/home/dogbert/.rakudobrew/moar-master/install/share/perl6/runtime/CORE.setting.moarvm:perl)
 from SETTING::src/core/Exception.pm:2207  (/home/dogbert/.rakudobrew/moar-master/install/share/perl6/runtime/CORE.setting.moarvm:)
 from SETTING::src/core/Exception.pm:2207  (/home/dogbert/.rakudobrew/moar-master/install/share/perl6/runtime/CORE.setting.moarvm:gotn)
 from SETTING::src/core/Exception.pm:2256  (/home/dogbert/.rakudobrew/moar-master/install/share/perl6/runtime/CORE.setting.moarvm:message)
 from SETTING::src/core/Mu.pm:829  (/home/dogbert/.rakudobrew/moar-master/install/share/perl6/runtime/CORE.setting.moarvm:dispatch:<.?>)
 from SETTING::src/core/Exception.pm:40  (/home/dogbert/.rakudobrew/moar-master/install/share/perl6/runtime/CORE.setting.moarvm:)
 from SETTING::src/core/Exception.pm:39  (/home/dogbert/.rakudobrew/moar-master/install/share/perl6/runtime/CORE.setting.moarvm:)
 from SETTING::src/core/Exception.pm:37  (/home/dogbert/.rakudobrew/moar-master/install/share/perl6/runtime/CORE.setting.moarvm:gist)
 from SETTING::src/core/Mu.pm:607  (/home/dogbert/.rakudobrew/moar-master/install/share/perl6/runtime/CORE.setting.moarvm:gist)
 from SETTING::src/core/Exception.pm:378  (/home/dogbert/.rakudobrew/moar-master/install/share/perl6/runtime/CORE.setting.moarvm:)
 from SETTING::src/core/Exception.pm:372  (/home/dogbert/.rakudobrew/moar-master/install/share/perl6/runtime/CORE.setting.moarvm:print_exception)
 from SETTING::src/core/Exception.pm:452  (/home/dogbert/.rakudobrew/moar-master/install/share/perl6/runtime/CORE.setting.moarvm:<anon>)
 from gen/moar/stage2/NQPHLL.nqp:1703  (/home/dogbert/.rakudobrew/moar-master/install/share/nqp/lib/NQPHLL.moarvm:command_eval)
 from src/Perl6/Compiler.nqp:42  (/home/dogbert/.rakudobrew/moar-master/install/share/nqp/lib/Perl6/Compiler.moarvm:command_eval)
 from gen/moar/stage2/NQPHLL.nqp:1625  (/home/dogbert/.rakudobrew/moar-master/install/share/nqp/lib/NQPHLL.moarvm:command_line)
 from gen/moar/main.nqp:47  (/home/dogbert/.rakudobrew/moar-master/install/share/perl6/runtime/perl6.moarvm:MAIN)
 from gen/moar/main.nqp:38  (/home/dogbert/.rakudobrew/moar-master/install/share/perl6/runtime/perl6.moarvm:<mainline>)
 from <unknown>:1  (/home/dogbert/.rakudobrew/moar-master/install/share/perl6/runtime/perl6.moarvm:<main>)
 from <unknown>:1  (/home/dogbert/.rakudobrew/moar-master/install/share/perl6/runtime/perl6.moarvm:<entry>)
$1 = void
(gdb) 

kazcw added a commit to kazcw/MoarVM that referenced this issue Jun 8, 2019
Fixes non-deterministic segfaults in anything that non-trivially uses
CStruct/CPPStruct/CUnion reprs.

Also fixed a separate bug in CUnion: it wasn't caching child objects for
attributes that are inlined.

Tested to fix the issue in MoarVM MoarVM#800, Skarsnik/perl6-gumbo#5 and perl6 RT 131003.
Probably also fixes MoarVM MoarVM#751 and MoarVM#1087
@AlexDaniel
Copy link
Contributor

@dogbert17 can you retest? This issue is supposedly fixed now.

@dogbert17
Copy link
Contributor

dogbert17 commented Jul 10, 2019

I'm unable to repro the panic, the only output I get now is

Parsed
Type check failed in binding to parameter '$start'; expected XML::Node but got Array ($[(my \XML::Element_9...)
in method find at /home/dogbert/.rakudobrew/versions/moar-master/install/share/perl6/site/sources/6AC9DF1399E780D57E87522767E6254D7925FA33 (XML::XPath) line 25
in block <unit> at mumbo.pl6 line 11

Looking a bit more closely it seem as if valgrind is not entirely satisfied:

================================================================================================
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 2019.03.1.680.g.82.fc.4.e.570 built on MoarVM version 2019.05.94.g.459.e.68675,
running on linuxmint (19.1.Tessa) / linux (58.Ubuntu.SMP.Mon.Jun.24.10.55.12.UTC.2019)
------------------------------------------------------------------------------------------------
==6335== Memcheck, a memory error detector
==6335== Copyright (C) 2002-2017, and GNU GPL'd, by Julian Seward et al.
==6335== Using Valgrind-3.13.0 and LibVEX; rerun with -h for copyright info
==6335== Command: /home/dogbert/.rakudobrew/versions/moar-master/install/bin/perl6-m mumbo.pl6
==6335== 
--6335-- WARNING: unhandled x86-linux syscall: 383
--6335-- You may be able to write your own handler.
--6335-- Read the file README_MISSING_SYSCALL_OR_IOCTL.
--6335-- Nevertheless we consider this a bug.  Please report
--6335-- it at http://valgrind.org/support/bug_reports.html.
==6335== Invalid read of size 4
==6335==    at 0x4925B57: MVM_nativecall_refresh (nativecall.c:1053)
==6335==    by 0x4927B92: MVM_nativecall_invoke (nativecall_dyncall.c:813)
==6335==    by 0x48F6B2E: MVM_interp_run (interp.c:4025)
==6335==    by 0x4A24EB5: MVM_vm_run_file (moar.c:444)
==6335==    by 0x108D23: main (in /home/dogbert/.rakudobrew/versions/moar-master/install/bin/perl6-m)
==6335==  Address 0x872d4f0 is 0 bytes inside a block of size 20 free'd
==6335==    at 0x48313D7: free (in /usr/lib/valgrind/vgpreload_memcheck-x86-linux.so)
==6335==    by 0xECB7F77: ??? (in /usr/lib/i386-linux-gnu/libgumbo.so.1.0.0)
==6335==    by 0xECC8242: gumbo_parser_deallocate (in /usr/lib/i386-linux-gnu/libgumbo.so.1.0.0)
==6335==    by 0xECC1E4F: gumbo_destroy_output (in /usr/lib/i386-linux-gnu/libgumbo.so.1.0.0)
==6335==    by 0x4A2D445: ??? (in /home/dogbert/.rakudobrew/versions/moar-master/install/lib/libmoar.so)
==6335==    by 0x4A2CDEC: dc_callvm_call_x86_cdecl (in /home/dogbert/.rakudobrew/versions/moar-master/install/lib/libmoar.so)
==6335==    by 0x4A2C937: dcCallVoid (in /home/dogbert/.rakudobrew/versions/moar-master/install/lib/libmoar.so)
==6335==    by 0x49282EC: MVM_nativecall_invoke (nativecall_dyncall.c:620)
==6335==    by 0x48F6B2E: MVM_interp_run (interp.c:4025)
==6335==    by 0x4A24EB5: MVM_vm_run_file (moar.c:444)
==6335==    by 0x108D23: main (in /home/dogbert/.rakudobrew/versions/moar-master/install/bin/perl6-m)
==6335==  Block was alloc'd at
==6335==    at 0x483021B: malloc (in /usr/lib/valgrind/vgpreload_memcheck-x86-linux.so)
==6335==    by 0xECB7F97: ??? (in /usr/lib/i386-linux-gnu/libgumbo.so.1.0.0)
==6335==    by 0xECC8221: gumbo_parser_allocate (in /usr/lib/i386-linux-gnu/libgumbo.so.1.0.0)
==6335==    by 0xECC0EAC: gumbo_parse_with_options (in /usr/lib/i386-linux-gnu/libgumbo.so.1.0.0)
==6335==    by 0xECC1D99: gumbo_parse (in /usr/lib/i386-linux-gnu/libgumbo.so.1.0.0)
==6335==    by 0x4A2D445: ??? (in /home/dogbert/.rakudobrew/versions/moar-master/install/lib/libmoar.so)
==6335==    by 0x4A2CDEC: dc_callvm_call_x86_cdecl (in /home/dogbert/.rakudobrew/versions/moar-master/install/lib/libmoar.so)
==6335==    by 0x4A2CAAC: dcCallPointer (in /home/dogbert/.rakudobrew/versions/moar-master/install/lib/libmoar.so)
==6335==    by 0x492846D: MVM_nativecall_invoke (nativecall_dyncall.c:620)
==6335==    by 0x48F6B2E: MVM_interp_run (interp.c:4025)
==6335==    by 0x4A24EB5: MVM_vm_run_file (moar.c:444)
==6335==    by 0x108D23: main (in /home/dogbert/.rakudobrew/versions/moar-master/install/bin/perl6-m)
==6335== 
Parsed
...

The code being run is in fact the code posted by the OP :-)

@domq
Copy link
Author

domq commented Mar 12, 2020

As of today, the bug is gone; please feel free to close this issue.

Mac:~$ perl6 --version
This is Rakudo version 2020.01 built on MoarVM version 2020.01.1
implementing Perl 6.d.
Mac:~$ brew info gumbo-parser
gumbo-parser: stable 0.10.1 (bottled)
[...]
Mac:~$ zef info Gumbo
- Info for: Gumbo
- Identity: Gumbo:ver<1.0>:auth<Sylvain Colinet>
[...]
Mac:~$ zef info XML::XPath
- Info for: XML::XPath
- Identity: XML::XPath:ver<0.9.3>
[...]

Background: Damian Conway is in town today, I would have loved to ask a perfidious question regarding #800 but I am finding myself barred from doing so ☺. Good job everyone!

@lizmat lizmat closed this as completed Mar 12, 2020
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

5 participants