Open
Description
The following crash happened when running CI tests with release build and the Immix plan. Link: https://github.com/mmtk/mmtk-ruby/actions/runs/11549564269/job/32142824795?pr=113#step:9:7498
TestZlibInflate#test_recursive_inflate = 0.64 s = .
TestGemPackageTarHeader#test_empty = 0.01 s = .
TestGemPackageTarHeader#test_equals2 = 0.01 s = .
TestZlibInflate#test_finish_chunked = 0.00 s = .
thread '<unnamed>' panicked at /home/runner/.cargo/git/checkouts/mmtk-core-3306bdeb8eb4322b/618fde4/src/policy/immix/immixspace.rs:551:26:
internal error: entered unreachable code: Block(0x20100ae8000) Marked
stack backtrace:
0: rust_begin_unwind
1: core::panicking::panic_fmt
2: mmtk::policy::immix::immixspace::ImmixSpace<VM>::get_reusable_block
3: mmtk::util::alloc::immix_allocator::ImmixAllocator<VM>::acquire_recyclable_lines
4: <mmtk::util::alloc::immix_allocator::ImmixAllocator<VM> as mmtk::util::alloc::allocator::Allocator<VM>>::alloc
TestCoverage#test_coverage_snapshot = 0.10 s = .
TestGemPackageTarHeader#test_to_s = 0.02 s = .
5: rb_mmtk_alloc
at ./../mmtk_support.c:464:20
6: rb_mmtk_alloc_obj
at ./../mmtk_support.c:512:18
7: rb_mmtk_newobj_of_inner
at ./../gc/default.c:2620:17
8: rb_gc_impl_new_obj
at ./../gc/default.c:2667:15
9: newobj_of
at ./../gc.c:919:17
10: rb_wb_protected_newobj_of
at ./../gc.c:946:12
11: rb_ary_tmp_new_from_values
at ./../array.c:976:11
12: rb_ary_new_from_values
at ./../array.c:988:12
13: iseq_location
at ./../proc.c:1345:12
14: rb_proc_location
at ./../proc.c:1365:12
15: threadptr_invoke_proc_location
at ./../thread.c:976:16
16: threadptr_invoke_proc_location
at ./../thread.c:973:1
17: native_set_thread_name
at ./../thread_pthread.c:2693:21
18: thread_do_start
at ./../thread.c:640:5
19: thread_start_func_2
at ./../thread.c:708:18
20: call_thread_start_func_2
at ./../thread_pthread.c:2180:5
21: nt_start
at ./../thread_pthread.c:2225:13
22: <unknown>
23: <unknown>
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.
fatal runtime error: failed to initiate panic, error 5
TestGemPackageTarHeader#test_update_checksum = 0.09 s = .
TestGemPackageTarHeader#test_initialize_bad = 0.01 s = .
TestGemPackageTarHeader#test_initialize = 0.01 s = .
TestGemCommandsUnpackCommand#test_find_in_cache = 0.36 s = .
TestCoverage#test_oneshot_line_coverage = 0.13 s = .
running file: /home/runner/work/mmtk-ruby/mmtk-ruby/git/ruby/test/zlib/test_zlib.rb
A test worker crashed. It might be an interpreter bug or
a bug in test/unit/parallel.rb. Try again without the -j
option.
make: *** [uncommon.mk:965: yes-test-all] Error 1
In Immix, when a block is added into ImmixSpace::reusable_blocks
during Block::sweep()
, it is always set to BlockState::Reusable
.
So far I have not been able to reproduce this bug locally. It may be related to the PR #113 I will try to restart the CI test to see if it can be reproduced on GitHub CI.
Metadata
Metadata
Assignees
Labels
No labels