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

Fix segfault if root task is NULL #51471

Merged
merged 1 commit into from
Sep 27, 2023
Merged

Fix segfault if root task is NULL #51471

merged 1 commit into from
Sep 27, 2023

Conversation

kpamnany
Copy link
Contributor

In jl_print_task_backtraces(). Follow-on to #51430.

Copy link
Member

@NHDaly NHDaly left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Huh, cool, makes sense to me! 👍

When could the root task be NULL? Is it for GC threads? Is this PR essentially fixing the same thing that @d-netto fixed in #51413, or is that something different?

Or could it be for adopted threads?

LGTM but probably best to wait for @vtjnash of course.

@vtjnash vtjnash merged commit cde964f into master Sep 27, 2023
6 checks passed
@vtjnash vtjnash deleted the kp/fix-tbt-segfault branch September 27, 2023 10:20
kpamnany added a commit to RelationalAI/julia that referenced this pull request Sep 27, 2023
In `jl_print_task_backtraces()`. Follow-on to
JuliaLang#51430.
kpamnany added a commit to RelationalAI/julia that referenced this pull request Sep 27, 2023
In `jl_print_task_backtraces()`. Follow-on to
JuliaLang#51430.
@kpamnany
Copy link
Contributor Author

When could the root task be NULL? Is it for GC threads?

Yes, and ostensibly it was fixed in 51413. However, I still ran into a segfault, hence added the defensive checks here.

@brenhinkeller brenhinkeller added the bugfix This change fixes an existing bug label Oct 3, 2023
kpamnany added a commit to RelationalAI/julia that referenced this pull request Oct 19, 2023
In `jl_print_task_backtraces()`. Follow-on to
JuliaLang#51430.
@kpamnany kpamnany added the backport 1.10 Change should be backported to the 1.10 release label Oct 20, 2023
DelveCI pushed a commit to RelationalAI/julia that referenced this pull request Oct 20, 2023
In `jl_print_task_backtraces()`. Follow-on to
JuliaLang#51430.
kpamnany added a commit to RelationalAI/julia that referenced this pull request Oct 21, 2023
In `jl_print_task_backtraces()`. Follow-on to
JuliaLang#51430.
kpamnany added a commit to RelationalAI/julia that referenced this pull request Oct 21, 2023
In `jl_print_task_backtraces()`. Follow-on to
JuliaLang#51430.
kpamnany added a commit to RelationalAI/julia that referenced this pull request Oct 21, 2023
In `jl_print_task_backtraces()`. Follow-on to
JuliaLang#51430.
kpamnany added a commit to RelationalAI/julia that referenced this pull request Oct 21, 2023
In `jl_print_task_backtraces()`. Follow-on to
JuliaLang#51430.
DelveCI pushed a commit to RelationalAI/julia that referenced this pull request Oct 23, 2023
In `jl_print_task_backtraces()`. Follow-on to
JuliaLang#51430.
DelveCI pushed a commit to RelationalAI/julia that referenced this pull request Oct 23, 2023
In `jl_print_task_backtraces()`. Follow-on to
JuliaLang#51430.
DelveCI pushed a commit to RelationalAI/julia that referenced this pull request Oct 25, 2023
In `jl_print_task_backtraces()`. Follow-on to
JuliaLang#51430.
DelveCI pushed a commit to RelationalAI/julia that referenced this pull request Oct 26, 2023
In `jl_print_task_backtraces()`. Follow-on to
JuliaLang#51430.
DelveCI pushed a commit to RelationalAI/julia that referenced this pull request Oct 27, 2023
In `jl_print_task_backtraces()`. Follow-on to
JuliaLang#51430.
DelveCI pushed a commit to RelationalAI/julia that referenced this pull request Oct 28, 2023
In `jl_print_task_backtraces()`. Follow-on to
JuliaLang#51430.
DelveCI pushed a commit to RelationalAI/julia that referenced this pull request Oct 29, 2023
In `jl_print_task_backtraces()`. Follow-on to
JuliaLang#51430.
DelveCI pushed a commit to RelationalAI/julia that referenced this pull request Oct 31, 2023
In `jl_print_task_backtraces()`. Follow-on to
JuliaLang#51430.
DelveCI pushed a commit to RelationalAI/julia that referenced this pull request Nov 1, 2023
In `jl_print_task_backtraces()`. Follow-on to
JuliaLang#51430.
DelveCI pushed a commit to RelationalAI/julia that referenced this pull request Nov 1, 2023
In `jl_print_task_backtraces()`. Follow-on to
JuliaLang#51430.
DelveCI pushed a commit to RelationalAI/julia that referenced this pull request Nov 2, 2023
In `jl_print_task_backtraces()`. Follow-on to
JuliaLang#51430.
@KristofferC KristofferC mentioned this pull request Nov 6, 2023
39 tasks
DelveCI pushed a commit to RelationalAI/julia that referenced this pull request Nov 7, 2023
In `jl_print_task_backtraces()`. Follow-on to
JuliaLang#51430.
DelveCI pushed a commit to RelationalAI/julia that referenced this pull request Nov 10, 2023
In `jl_print_task_backtraces()`. Follow-on to
JuliaLang#51430.
DelveCI pushed a commit to RelationalAI/julia that referenced this pull request Nov 10, 2023
In `jl_print_task_backtraces()`. Follow-on to
JuliaLang#51430.
DelveCI pushed a commit to RelationalAI/julia that referenced this pull request Nov 10, 2023
In `jl_print_task_backtraces()`. Follow-on to
JuliaLang#51430.
DelveCI pushed a commit to RelationalAI/julia that referenced this pull request Nov 14, 2023
In `jl_print_task_backtraces()`. Follow-on to
JuliaLang#51430.
DelveCI pushed a commit to RelationalAI/julia that referenced this pull request Nov 14, 2023
In `jl_print_task_backtraces()`. Follow-on to
JuliaLang#51430.
DelveCI pushed a commit to RelationalAI/julia that referenced this pull request Nov 15, 2023
In `jl_print_task_backtraces()`. Follow-on to
JuliaLang#51430.
kpamnany added a commit to RelationalAI/julia that referenced this pull request Nov 16, 2023
In `jl_print_task_backtraces()`. Follow-on to
JuliaLang#51430.
KristofferC pushed a commit that referenced this pull request Nov 27, 2023
In `jl_print_task_backtraces()`. Follow-on to
#51430.

(cherry picked from commit cde964f)
KristofferC pushed a commit that referenced this pull request Nov 27, 2023
In `jl_print_task_backtraces()`. Follow-on to
#51430.

(cherry picked from commit cde964f)
KristofferC added a commit that referenced this pull request Dec 2, 2023
Backported PRs:
- [x] #51213 <!-- Wait for other threads to finish compiling before
exiting -->
- [x] #51520 <!-- Make allocopt respect the GC verifier rules with non
usual address spaces -->
- [x] #51598 <!-- Use a simple error when reporting sysimg load
failures. -->
- [x] #51757 <!-- fix parallel peakflop usage -->
- [x] #51781 <!-- Don't make pkgimages global editable -->
- [x] #51848 <!-- allow finalizers to take any locks and yield during
exit -->
- [x] #51847 <!-- add missing wait during Timer and AsyncCondition close
-->
- [x] #50824 <!-- Add some aliasing warnings to docstrings for mutating
functions in Base -->
- [x] #51885 <!-- remove chmodding the pkgimages -->
- [x] #50207 <!-- [devdocs] Improve documentation about building
external forks of LLVM -->
- [x] #51967 <!-- further fix to the new promoting method for
AbstractDateTime subtraction -->
- [x] #51980 <!-- macroexpand: handle const/atomic struct fields
correctly -->
- [x] #51995 <!-- [Artifacts] Pass artifacts dictionary to
`ensure_artifact_installed` dispatch -->
- [x] #52098 <!-- Fix errors in `sort` docstring -->
- [x] #52136 <!-- Bump JuliaSyntax to 0.4.7 -->
- [x] #52140 <!-- Make c func `abspath` consistent on Windows. Fix
tracking path conversion. -->
- [x] #52009 <!-- fix completion that resulted in startpos of 0 for `\\
-->
- [x] #52192 <!-- cap the number of GC threads to number of cpu cores
-->
- [x] #52206 <!-- Make have_fma consistent between interpreter and
compiled -->
- [x] #52027 <!-- fix Unicode.julia_chartransform for Julia 1.10 -->
- [x] #52217 <!-- More helpful error message for empty `cpu_target` in
`Base.julia_cmd` -->
- [x] #51371 <!-- Memoize `cwstring` when used for env lookup /
modification on Windows -->
- [x] #52214 <!-- Turn Method Overwritten Error into a PrecompileError
-- turning off caching -->
- [x] #51895 <!-- Devdocs on fixing precompile hangs, take 2 -->
- [x] #51596 <!-- Reland "Don't mark nonlocal symbols as hidden"" -->
- [x] #51834 <!-- [REPLCompletions] allow symbol completions within
incomplete macrocall expression -->
- [x] #52010 <!-- Revert "Support sorting iterators (#46104)" -->
- [x] #51430 <!-- add support for async backtraces of Tasks on any
thread -->
- [x] #51471 <!-- Fix segfault if root task is NULL -->
- [x] #52194 <!-- Fix multiversioning issues caused by the parallel llvm
work -->
- [x] #51035 <!-- refactor GC scanning code to reflect jl_binding_t are
now first class -->
- [x] #52030 <!-- Bump Statistics -->
- [x] #52189 <!-- codegen: ensure i1 bool is widened to i8 before
storing -->
- [x] #52228 <!-- Widen diagonal var during `Type` unwrapping in
`instanceof_tfunc` -->
- [x] #52182 <!-- jitlayers: replace sharedbytes intern pool with one
that respects alignment -->

Contains multiple commits, manual intervention needed:
- [ ] #51092 <!-- inference: fix bad effects for recursion -->

Non-merged PRs with backport label:
- [ ] #52196 <!-- Fix creating custom log level macros -->
- [ ] #52170 <!-- fix invalidations related to `ismutable` -->
- [ ] #51479 <!-- prevent code loading from lookin in the versioned
environment when building Julia -->
@KristofferC KristofferC removed the backport 1.10 Change should be backported to the 1.10 release label Dec 2, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bugfix This change fixes an existing bug
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants