Closed
Description
On 1.11, Chairmarks works fine. On 1.12, it segfaults. The strings "@inbounds"
and "unsafe"
do not appear in the src
directory and I don't do anything particularly internal that I know of. IMO, the funkeyest code is here: https://github.com/LilithHafner/Chairmarks.jl/blob/80e84d0ba90fcac61959d1f992e034f5445bf4cd/src/benchmarking.jl#L115-L165.
Tagging GC at a guess because it appears in the segfault stack trace, but it could certianly be due to a non-gc issue.
MWE:
x@x:~/.julia/dev/Chairmarks$ julia +nightly
A new `nightly` version is available. Install with `juliaup update`.
o | Version 1.12.0-DEV.1825 (2025-01-02)
o o | Commit ed2cb490505 (8 days old master)
julia> x = @be rand;
julia> typeof(x)
[49190] signal 11 (1): Segmentation fault
in expression starting at REPL[2]:1
gc_mark_outrefs at /cache/build/default-aws-aarch64-ci-1-3/julialang/julia-master/src/gc-stock.c:2262 [inlined]
gc_mark_loop_serial_ at /cache/build/default-aws-aarch64-ci-1-3/julialang/julia-master/src/gc-stock.c:2427
gc_mark_loop_serial at /cache/build/default-aws-aarch64-ci-1-3/julialang/julia-master/src/gc-stock.c:2450
gc_mark_loop at /cache/build/default-aws-aarch64-ci-1-3/julialang/julia-master/src/gc-stock.c:2638 [inlined]
_jl_gc_collect at /cache/build/default-aws-aarch64-ci-1-3/julialang/julia-master/src/gc-stock.c:2981
ijl_gc_collect at /cache/build/default-aws-aarch64-ci-1-3/julialang/julia-master/src/gc-stock.c:3369
maybe_collect at /cache/build/default-aws-aarch64-ci-1-3/julialang/julia-master/src/gc-stock.c:349 [inlined]
jl_gc_small_alloc_inner at /cache/build/default-aws-aarch64-ci-1-3/julialang/julia-master/src/gc-stock.c:722 [inlined]
jl_gc_small_alloc_noinline at /cache/build/default-aws-aarch64-ci-1-3/julialang/julia-master/src/gc-stock.c:780 [inlined]
jl_gc_alloc_ at /cache/build/default-aws-aarch64-ci-1-3/julialang/julia-master/src/gc-stock.c:794
jl_alloc_genericmemory_unchecked at /cache/build/default-aws-aarch64-ci-1-3/julialang/julia-master/src/genericmemory.c:41
_new_genericmemory_ at /cache/build/default-aws-aarch64-ci-1-3/julialang/julia-master/src/genericmemory.c:68 [inlined]
jl_alloc_genericmemory at /cache/build/default-aws-aarch64-ci-1-3/julialang/julia-master/src/genericmemory.c:101
new_array at /cache/build/default-aws-aarch64-ci-1-3/julialang/julia-master/src/array.c:84 [inlined]
ijl_alloc_array_1d at /cache/build/default-aws-aarch64-ci-1-3/julialang/julia-master/src/array.c:149
ijl_uncompress_ir at /cache/build/default-aws-aarch64-ci-1-3/julialang/julia-master/src/ircode.c:1143
_uncompressed_ir at ./runtime_internals.jl:1402
retrieve_ir_for_inlining at ./../usr/share/julia/Compiler/src/ssair/inlining.jl:955 [inlined]
resolve_todo at ./../usr/share/julia/Compiler/src/ssair/inlining.jl:870
#analyze_method!#180 at ./../usr/share/julia/Compiler/src/ssair/inlining.jl:951
analyze_method! at ./../usr/share/julia/Compiler/src/ssair/inlining.jl:918 [inlined]
#handle_match!#183 at ./../usr/share/julia/Compiler/src/ssair/inlining.jl:1413
handle_match! at ./../usr/share/julia/Compiler/src/ssair/inlining.jl:1405 [inlined]
#handle_any_const_result!#181 at ./../usr/share/julia/Compiler/src/ssair/inlining.jl:1306
handle_any_const_result! at ./../usr/share/julia/Compiler/src/ssair/inlining.jl:1294 [inlined]
compute_inlining_cases at ./../usr/share/julia/Compiler/src/ssair/inlining.jl:1366
handle_call! at ./../usr/share/julia/Compiler/src/ssair/inlining.jl:1398 [inlined]
assemble_inline_todo! at ./../usr/share/julia/Compiler/src/ssair/inlining.jl:1648
ssa_inlining_pass! at ./../usr/share/julia/Compiler/src/ssair/inlining.jl:76 [inlined]
run_passes_ipo_safe at ./../usr/share/julia/Compiler/src/optimize.jl:1013
run_passes_ipo_safe at ./../usr/share/julia/Compiler/src/optimize.jl:1027 [inlined]
optimize at ./../usr/share/julia/Compiler/src/optimize.jl:1002
jfptr_optimize_116330.3 at /home/x/.julia/juliaup/julia-nightly/lib/julia/sys.so (unknown line)
finish_nocycle at ./../usr/share/julia/Compiler/src/typeinfer.jl:180
jfptr_finish_nocycle_117313.3 at /home/x/.julia/juliaup/julia-nightly/lib/julia/sys.so (unknown line)
typeinf at ./../usr/share/julia/Compiler/src/abstractinterpretation.jl:4232
const_prop_call at ./../usr/share/julia/Compiler/src/abstractinterpretation.jl:1359
abstract_call_method_with_const_args at ./../usr/share/julia/Compiler/src/abstractinterpretation.jl:909
abstract_call_method_with_const_args at ./../usr/share/julia/Compiler/src/abstractinterpretation.jl:879 [inlined]
handle1 at ./../usr/share/julia/Compiler/src/abstractinterpretation.jl:178
infercalls at ./../usr/share/julia/Compiler/src/abstractinterpretation.jl:251
abstract_call_gf_by_type at ./../usr/share/julia/Compiler/src/abstractinterpretation.jl:344
abstract_call_known at ./../usr/share/julia/Compiler/src/abstractinterpretation.jl:2757
abstract_call at ./../usr/share/julia/Compiler/src/abstractinterpretation.jl:2862
abstract_call at ./../usr/share/julia/Compiler/src/abstractinterpretation.jl:2855 [inlined]
abstract_call at ./../usr/share/julia/Compiler/src/abstractinterpretation.jl:3014
abstract_eval_call at ./../usr/share/julia/Compiler/src/abstractinterpretation.jl:3032 [inlined]
abstract_eval_statement_expr at ./../usr/share/julia/Compiler/src/abstractinterpretation.jl:3289
typeinf_local at ./../usr/share/julia/Compiler/src/abstractinterpretation.jl:4036
jfptr_typeinf_local_117330.3 at /home/x/.julia/juliaup/julia-nightly/lib/julia/sys.so (unknown line)
typeinf at ./../usr/share/julia/Compiler/src/abstractinterpretation.jl:4228
const_prop_call at ./../usr/share/julia/Compiler/src/abstractinterpretation.jl:1359
abstract_call_method_with_const_args at ./../usr/share/julia/Compiler/src/abstractinterpretation.jl:909
abstract_call_method_with_const_args at ./../usr/share/julia/Compiler/src/abstractinterpretation.jl:879 [inlined]
handle1 at ./../usr/share/julia/Compiler/src/abstractinterpretation.jl:178
infercalls at ./../usr/share/julia/Compiler/src/abstractinterpretation.jl:251
abstract_call_gf_by_type at ./../usr/share/julia/Compiler/src/abstractinterpretation.jl:344
abstract_call_known at ./../usr/share/julia/Compiler/src/abstractinterpretation.jl:2757
abstract_call at ./../usr/share/julia/Compiler/src/abstractinterpretation.jl:2862
abstract_call at ./../usr/share/julia/Compiler/src/abstractinterpretation.jl:2855 [inlined]
abstract_call at ./../usr/share/julia/Compiler/src/abstractinterpretation.jl:3014
abstract_eval_call at ./../usr/share/julia/Compiler/src/abstractinterpretation.jl:3032 [inlined]
abstract_eval_statement_expr at ./../usr/share/julia/Compiler/src/abstractinterpretation.jl:3289
typeinf_local at ./../usr/share/julia/Compiler/src/abstractinterpretation.jl:4036
jfptr_typeinf_local_117330.3 at /home/x/.julia/juliaup/julia-nightly/lib/julia/sys.so (unknown line)
typeinf at ./../usr/share/julia/Compiler/src/abstractinterpretation.jl:4228
typeinf_ext at ./../usr/share/julia/Compiler/src/typeinfer.jl:1127
typeinf_ext_toplevel at ./../usr/share/julia/Compiler/src/typeinfer.jl:1201
jfptr_typeinf_ext_toplevel_117256.3 at /home/x/.julia/juliaup/julia-nightly/lib/julia/sys.so (unknown line)
jl_apply at /cache/build/default-aws-aarch64-ci-1-3/julialang/julia-master/src/julia.h:2246 [inlined]
jl_type_infer at /cache/build/default-aws-aarch64-ci-1-3/julialang/julia-master/src/gf.c:452
jl_compile_method_internal at /cache/build/default-aws-aarch64-ci-1-3/julialang/julia-master/src/gf.c:2942
_jl_invoke at /cache/build/default-aws-aarch64-ci-1-3/julialang/julia-master/src/gf.c:3436 [inlined]
ijl_apply_generic at /cache/build/default-aws-aarch64-ci-1-3/julialang/julia-master/src/gf.c:3644
show_repl at /cache/build/default-aws-aarch64-ci-1-3/julialang/julia-master/usr/share/julia/stdlib/v1.12/REPL/src/REPL.jl:575
show_limited at /cache/build/default-aws-aarch64-ci-1-3/julialang/julia-master/usr/share/julia/stdlib/v1.12/REPL/src/REPL.jl:544
#display##0 at /cache/build/default-aws-aarch64-ci-1-3/julialang/julia-master/usr/share/julia/stdlib/v1.12/REPL/src/REPL.jl:567
jfptr_YY.displayYY.YY.0_26105.3 at /home/x/.julia/juliaup/julia-nightly/share/julia/compiled/v1.12/REPL/u0gqU_ghSzr.so (unknown line)
with_repl_linfo at /cache/build/default-aws-aarch64-ci-1-3/julialang/julia-master/usr/share/julia/stdlib/v1.12/REPL/src/REPL.jl:868
jfptr_with_repl_linfo_25823.3 at /home/x/.julia/juliaup/julia-nightly/share/julia/compiled/v1.12/REPL/u0gqU_ghSzr.so (unknown line)
display at /cache/build/default-aws-aarch64-ci-1-3/julialang/julia-master/usr/share/julia/stdlib/v1.12/REPL/src/REPL.jl:553
display at /cache/build/default-aws-aarch64-ci-1-3/julialang/julia-master/usr/share/julia/stdlib/v1.12/REPL/src/REPL.jl:573 [inlined]
display at ./multimedia.jl:340
unknown function (ip: 0xffff8c14432f) at (unknown file)
jl_apply at /cache/build/default-aws-aarch64-ci-1-3/julialang/julia-master/src/julia.h:2246 [inlined]
jl_f__call_latest at /cache/build/default-aws-aarch64-ci-1-3/julialang/julia-master/src/builtins.c:883
#invokelatest#1 at ./essentials.jl:1056 [inlined]
invokelatest at ./essentials.jl:1052 [inlined]
print_response at /cache/build/default-aws-aarch64-ci-1-3/julialang/julia-master/usr/share/julia/stdlib/v1.12/REPL/src/REPL.jl:0
#print_response##0 at /cache/build/default-aws-aarch64-ci-1-3/julialang/julia-master/usr/share/julia/stdlib/v1.12/REPL/src/REPL.jl:585
jfptr_YY.print_responseYY.YY.0_26100.3 at /home/x/.julia/juliaup/julia-nightly/share/julia/compiled/v1.12/REPL/u0gqU_ghSzr.so (unknown line)
with_repl_linfo at /cache/build/default-aws-aarch64-ci-1-3/julialang/julia-master/usr/share/julia/stdlib/v1.12/REPL/src/REPL.jl:868
jfptr_with_repl_linfo_25823.3 at /home/x/.julia/juliaup/julia-nightly/share/julia/compiled/v1.12/REPL/u0gqU_ghSzr.so (unknown line)
print_response at /cache/build/default-aws-aarch64-ci-1-3/julialang/julia-master/usr/share/julia/stdlib/v1.12/REPL/src/REPL.jl:583
do_respond at /cache/build/default-aws-aarch64-ci-1-3/julialang/julia-master/usr/share/julia/stdlib/v1.12/REPL/src/REPL.jl:1210
jfptr_do_respond_25890.3 at /home/x/.julia/juliaup/julia-nightly/share/julia/compiled/v1.12/REPL/u0gqU_ghSzr.so (unknown line)
jl_apply at /cache/build/default-aws-aarch64-ci-1-3/julialang/julia-master/src/julia.h:2246 [inlined]
jl_f__call_latest at /cache/build/default-aws-aarch64-ci-1-3/julialang/julia-master/src/builtins.c:883
#invokelatest#1 at ./essentials.jl:1056 [inlined]
invokelatest at ./essentials.jl:1052 [inlined]
run_interface at /cache/build/default-aws-aarch64-ci-1-3/julialang/julia-master/usr/share/julia/stdlib/v1.12/REPL/src/LineEdit.jl:2800
run_frontend at /cache/build/default-aws-aarch64-ci-1-3/julialang/julia-master/usr/share/julia/stdlib/v1.12/REPL/src/REPL.jl:1681
#59 at /cache/build/default-aws-aarch64-ci-1-3/julialang/julia-master/usr/share/julia/stdlib/v1.12/REPL/src/REPL.jl:687
jfptr_YY.59_26074.3 at /home/x/.julia/juliaup/julia-nightly/share/julia/compiled/v1.12/REPL/u0gqU_ghSzr.so (unknown line)
jl_apply at /cache/build/default-aws-aarch64-ci-1-3/julialang/julia-master/src/julia.h:2246 [inlined]
start_task at /cache/build/default-aws-aarch64-ci-1-3/julialang/julia-master/src/task.c:1281
Allocations: 2081014 (Pool: 2080763; Big: 251); GC: 2
Segmentation fault (core dumped)