Allocation tracker - fix deadlock when calling into logs#425
Merged
Conversation
Collaborator
Author
|
Perhaps the logger could be more simple and wait for safe points ? |
nsavoire
previously approved these changes
Sep 24, 2024
When entering error paths in the allocation profiler, we would log. This could create deadlocks while trying to acquire a lock to print timestamps in logs. Here is the backtrace where the deadlock was found: Thread 1 (Thread 0x7f0dffe31180 (LWP 1773386)): This commit moves the logs to the debug level to make sure they would not print by default. We can still trigger the logs in debug mode.
r1viollet
force-pushed
the
r1viollet/alloc_tracker_remove_logs
branch
from
October 1, 2024 08:04
17a4cfa to
0c9b883
Compare
…n tracker unit test. This seems to be a compiler bug.
Benchmark results for collatzParameters
SummaryFound 0 performance improvements and 0 performance regressions! Performance is the same for 1 metrics, 0 unstable metrics. See unchanged results
|
Benchmark results for BadBoggleSolver_runParameters
SummaryFound 0 performance improvements and 0 performance regressions! Performance is the same for 1 metrics, 0 unstable metrics. See unchanged results
|
nsavoire
approved these changes
Oct 3, 2024
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What does this PR do?
When entering error paths in the allocation profiler, we would log. This could create deadlocks while trying to acquire a lock to print timestamps in logs. Here is the backtrace where the deadlock was found:
This commit moves the logs to the debug level to make sure they would not print by default. We can still trigger the logs in debug mode.
Motivation
Remove a dead lock.
Additional Notes
NA
How to test the change?
I am not able to reproduce this.
the conflict was with the appsec library also calling into the
__tz_convertfunction.TBD