JuliaLang / julia

The Julia Programming Language
https://julialang.org/
MIT License
44.95k stars 5.42k forks source link

Typing Memory.body() crashes Julia. #54969

Open andrewmcconnell opened 3 days ago

andrewmcconnell commented 3 days ago

1)

julia> versioninfo()
Julia Version 1.11.0-rc1
Commit 3a35aec36d (2024-06-25 10:23 UTC)
Build Info:
  Official https://julialang.org/ release
Platform Info:
  OS: Windows (x86_64-w64-mingw32)
  CPU: 16 × 11th Gen Intel(R) Core(TM) i7-11800H @ 2.30GHz
  WORD_SIZE: 64
  LLVM: libLLVM-16.0.6 (ORCJIT, tigerlake)
Threads: 1 default, 0 interactive, 1 GC (on 16 virtual cores)

2) Julia installed via juliaup

3) MWE

(@v1.11) pkg> add Lux
(@v1.11) pkg> add LuxCUDA
julia> Memory.  <tab>
body
var
julia> Memory.body
GenericMemory{:not_atomic, T, Core.AddrSpace{Core}(0x00)}

julia> Memory.body()

Please submit a bug report with steps to reproduce this fault, and any error messages that follow (in their entirety). Thanks.
Exception: EXCEPTION_ACCESS_VIOLATION at 0x7ffe7d0aaaa4 -- jl_is_layout_opaque at C:/workdir/src\julia.h:1329 [inlined]
jl_datatype_layout at C:/workdir/src\julia.h:1337 [inlined]
jl_f_tuple at C:/workdir/src\builtins.c:936
in expression starting at none:0
jl_is_layout_opaque at C:/workdir/src\julia.h:1329 [inlined]
jl_datatype_layout at C:/workdir/src\julia.h:1337 [inlined]
jl_f_tuple at C:/workdir/src\builtins.c:936
indexed_iterate at .\pair.jl:42 [inlined]
indexed_iterate at .\pair.jl:42
jfptr_indexed_iterate_15069 at C:\Users\amokm\.julia\juliaup\julia-1.11.0-rc1+0.x64.w64.mingw32\share\julia\compiled\v1.11\REPL\u0gqU_e6ieL.dll (unknown line)
print_response at C:\workdir\usr\share\julia\stdlib\v1.11\REPL\src\REPL.jl:376
#70 at C:\workdir\usr\share\julia\stdlib\v1.11\REPL\src\REPL.jl:357
jfptr_YY.70_10862 at C:\Users\amokm\.julia\juliaup\julia-1.11.0-rc1+0.x64.w64.mingw32\share\julia\compiled\v1.11\REPL\u0gqU_e6ieL.dll (unknown line)
with_repl_linfo at C:\workdir\usr\share\julia\stdlib\v1.11\REPL\src\REPL.jl:644
jfptr_with_repl_linfo_10965 at C:\Users\amokm\.julia\juliaup\julia-1.11.0-rc1+0.x64.w64.mingw32\share\julia\compiled\v1.11\REPL\u0gqU_e6ieL.dll (unknown line)
print_response at C:\workdir\usr\share\julia\stdlib\v1.11\REPL\src\REPL.jl:355
do_respond at C:\workdir\usr\share\julia\stdlib\v1.11\REPL\src\REPL.jl:986
jfptr_do_respond_11025 at C:\Users\amokm\.julia\juliaup\julia-1.11.0-rc1+0.x64.w64.mingw32\share\julia\compiled\v1.11\REPL\u0gqU_e6ieL.dll (unknown line)
jl_apply at C:/workdir/src\julia.h:2156 [inlined]
jl_f__call_latest at C:/workdir/src\builtins.c:875
#invokelatest#2 at .\essentials.jl:1043 [inlined]
invokelatest at .\essentials.jl:1040 [inlined]
run_interface at C:\workdir\usr\share\julia\stdlib\v1.11\REPL\src\LineEdit.jl:2749
jfptr_run_interface_9478 at C:\Users\amokm\.julia\juliaup\julia-1.11.0-rc1+0.x64.w64.mingw32\share\julia\compiled\v1.11\REPL\u0gqU_e6ieL.dll (unknown line)
run_frontend at C:\workdir\usr\share\julia\stdlib\v1.11\REPL\src\REPL.jl:1454
#75 at C:\workdir\usr\share\julia\stdlib\v1.11\REPL\src\REPL.jl:459
jfptr_YY.75_10919 at C:\Users\amokm\.julia\juliaup\julia-1.11.0-rc1+0.x64.w64.mingw32\share\julia\compiled\v1.11\REPL\u0gqU_e6ieL.dll (unknown line)
jl_apply at C:/workdir/src\julia.h:2156 [inlined]
start_task at C:/workdir/src\task.c:1202
Allocations: 35086977 (Pool: 35083733; Big: 3244); GC: 84
PS C:\Users\amokm\Desktop\JuliaStuff>

(@v1.11) pkg> st
Status `C:\Users\amokm\.julia\environments\v1.11\Project.toml`
  [a6e380b2] ControlSystems v1.10.3
  [b2108857] Lux v0.5.57
  [d0bbae9a] LuxCUDA v0.3.2
⌃ [961ee093] ModelingToolkit v9.19.0
  [16a59e39] ModelingToolkitStandardLibrary v2.7.2
⌃ [1dea7af3] OrdinaryDiffEq v6.84.0
  [91a5bcdd] Plots v1.40.4
⌃ [28d57a85] Transducers v0.4.80
Info Packages marked with ⌃ have new versions available and may be upgradable.
oscardssmith commented 2 days ago

Reduced to


julia> Memory.body.instance

[171114] signal 11 (1): Segmentation fault
in expression starting at REPL[22]:1
jl_is_layout_opaque at /home/oscardssmith/julia/src/julia.h:1354 [inlined]
jl_datatype_layout at /home/oscardssmith/julia/src/julia.h:1362 [inlined]
jl_f_tuple at /home/oscardssmith/julia/src/builtins.c:936 [inlined]
jl_f_tuple at /home/oscardssmith/julia/src/builtins.c:926
indexed_iterate at ./pair.jl:42 [inlined]
indexed_iterate at ./pair.jl:42
jfptr_indexed_iterate_16593 at /home/oscardssmith/julia/usr/share/julia/compiled/v1.12/REPL/u0gqU_QC9Uc.so (unknown line)
print_response at /home/oscardssmith/julia/usr/share/julia/stdlib/v1.12/REPL/src/REPL.jl:415
#70 at /home/oscardssmith/julia/usr/share/julia/stdlib/v1.12/REPL/src/REPL.jl:396
jfptr_YY.70_12360 at /home/oscardssmith/julia/usr/share/julia/compiled/v1.12/REPL/u0gqU_QC9Uc.so (unknown line)
with_repl_linfo at /home/oscardssmith/julia/usr/share/julia/stdlib/v1.12/REPL/src/REPL.jl:683
jfptr_with_repl_linfo_12478 at /home/oscardssmith/julia/usr/share/julia/compiled/v1.12/REPL/u0gqU_QC9Uc.so (unknown line)
print_response at /home/oscardssmith/julia/usr/share/julia/stdlib/v1.12/REPL/src/REPL.jl:394
do_respond at /home/oscardssmith/julia/usr/share/julia/stdlib/v1.12/REPL/src/REPL.jl:1025
jfptr_do_respond_12541 at /home/oscardssmith/julia/usr/share/julia/compiled/v1.12/REPL/u0gqU_QC9Uc.so (unknown line)
jl_apply at /home/oscardssmith/julia/src/julia.h:2185 [inlined]
jl_f__call_latest at /home/oscardssmith/julia/src/builtins.c:875
#invokelatest#2 at ./essentials.jl:1045 [inlined]
invokelatest at ./essentials.jl:1042 [inlined]
run_interface at /home/oscardssmith/julia/usr/share/julia/stdlib/v1.12/REPL/src/LineEdit.jl:2748
jfptr_run_interface_11008 at /home/oscardssmith/julia/usr/share/julia/compiled/v1.12/REPL/u0gqU_QC9Uc.so (unknown line)
run_frontend at /home/oscardssmith/julia/usr/share/julia/stdlib/v1.12/REPL/src/REPL.jl:1493
#75 at /home/oscardssmith/julia/usr/share/julia/stdlib/v1.12/REPL/src/REPL.jl:498
jfptr_YY.75_12411 at /home/oscardssmith/julia/usr/share/julia/compiled/v1.12/REPL/u0gqU_QC9Uc.so (unknown line)
jl_apply at /home/oscardssmith/julia/src/julia.h:2185 [inlined]
start_task at /home/oscardssmith/julia/src/task.c:1240
Allocations: 4853569 (Pool: 4852880; Big: 689); GC: 9
Segmentation fault (core dumped)

which should return an UndefRefError.