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

Assertion failed in gc_ctrl.c #7831

Open
vicuna opened this Issue Jul 24, 2018 · 2 comments

Comments

Projects
None yet
1 participant
@vicuna
Copy link
Collaborator

vicuna commented Jul 24, 2018

Original bug ID: 7831
Reporter: db
Status: acknowledged (set by @xavierleroy on 2018-07-29T16:02:31Z)
Resolution: open
Priority: normal
Severity: major
Version: 4.07.0
Target version: 4.08.0+dev/beta1/beta2
Category: runtime system and C interface
Related to: #7829

Bug description

Another problem while running the testsuite with the debug runtime inside a docker container, now on Linux x64:

... testing 'weaklifetime.ml' with 1 (native) => passed
... testing 'weaklifetime.ml' with 2 (bytecode) => Process 14407 got signal 6(Aborted), core dumped

file gc_ctrl.c; line 71 ### Assertion failed: Color_hd (Hd_val (v)) != Caml_blue

Unfortunately, it does not happen always, restarted build may succeed, but no other test case seems to be failing on my x64 setup.

@vicuna

This comment has been minimized.

Copy link
Collaborator Author

vicuna commented Jul 25, 2018

Comment author: db

One more debug assertion of this kind, now with Linux i386/flambda:

Running tests from 'tests/lib-bigarray' ...
... testing 'bigarrays.ml' with 1 (native) => Process 4101 got signal 6(Aborted), core dumped
Could not find core file.
failed (Compiling program /builds/ocaml/compiler/testsuite/_ocamltestd/tests/lib-bigarray/bigarrays/ocamlopt.byte/bigarrays.opt from modules bigarrays.ml: command
/builds/ocaml/compiler/byterun/ocamlrund /builds/ocaml/compiler/ocamlopt -runtime-variant d -I /builds/ocaml/compiler/asmrun -nostdlib -I /builds/ocaml/compiler/stdlib -o /builds/ocaml/compiler/testsuite/_ocamltestd/tests/lib-bigarray/bigarrays/ocamlopt.byte/bigarrays.opt bigarrays.ml
failed with exit code -6)

file gc_ctrl.c; line 165 ### Assertion failed: prev_hp == NULL || Color_hp (prev_hp) != Caml_blue || cur_hp == (header_t *) caml_gc_sweep_hp

I'm a little bit nervous about that. Of course, one could blame faulty hardware etc., but I never had any issues with it. Probably it's worth trying older OCaml releases?

@vicuna

This comment has been minimized.

Copy link
Collaborator Author

vicuna commented Jul 29, 2018

Comment author: @xavierleroy

Thanks for the reports.

I'm surprised we haven't run into these issues earlier, because one of our CI infrastructures runs the test suite with the debug runtime (see tools/ci/travis/travis-ci.sh in the OCaml source tree). Probably we need to strengthen our CI.

There can be a real bug, or the assertions can be wrong or outdated. That will be for our GC experts to find.

@vicuna vicuna added the stdlib label Mar 14, 2019

@vicuna vicuna added this to the 4.08.0 milestone Mar 14, 2019

@vicuna vicuna added the bug label Mar 20, 2019

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.