add support for async backtraces of Tasks on any thread#51430
add support for async backtraces of Tasks on any thread#51430
Conversation
63f43ba to
f662a2e
Compare
The jl_live_tasks API now reports all threads, instead of only Tasks first started by the current thread. There is a new abstraction called mtarraylist with adds functionality to small_arraylist (it is layout-compatible). In particular, it makes it safe for another thread to observe the content of the list concurrently with any mutations.
f662a2e to
f7d8bfb
Compare
|
What this PR does (for future reference): Previously, the C/C++ part of the runtime had only arraylist_t and small_arraylist_t for lists of things, neither of which are inherently thread-safe and need an external lock. This PR adds small_mtarraylist_t which is basically a Three lists in Then, There are some changes to the All that essentially enables: |
|
what's the difference between an |
|
An |
In `jl_print_task_backtraces()`. Follow-on to #51430.
In `jl_print_task_backtraces()`. Follow-on to JuliaLang#51430.
In `jl_print_task_backtraces()`. Follow-on to JuliaLang#51430.
|
The previous implementation of this capability was insufficiently safe and segfaults on occasion, so this is actually a bugfix. Can we backport it to 1.10 @vtjnash and @KristofferC? |
|
If so, #51471 should be backported also. |
In `jl_print_task_backtraces()`. Follow-on to JuliaLang#51430.
In `jl_print_task_backtraces()`. Follow-on to JuliaLang#51430.
In `jl_print_task_backtraces()`. Follow-on to JuliaLang#51430.
In `jl_print_task_backtraces()`. Follow-on to JuliaLang#51430.
In `jl_print_task_backtraces()`. Follow-on to JuliaLang#51430.
In `jl_print_task_backtraces()`. Follow-on to JuliaLang#51430.
In `jl_print_task_backtraces()`. Follow-on to JuliaLang#51430.
In `jl_print_task_backtraces()`. Follow-on to JuliaLang#51430.
In `jl_print_task_backtraces()`. Follow-on to JuliaLang#51430.
In `jl_print_task_backtraces()`. Follow-on to JuliaLang#51430.
In `jl_print_task_backtraces()`. Follow-on to JuliaLang#51430.
In `jl_print_task_backtraces()`. Follow-on to JuliaLang#51430.
In `jl_print_task_backtraces()`. Follow-on to JuliaLang#51430.
(cherry picked from commit e5c6340)
No description provided.