Abseil deadlock detection
Nobody has claimed this yet.
Assessment
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Newbie friendliness
- 30/100
- Issue type
- Bug
- Clarity
- Needs clarification
- Activity status
- Stale
- Tech stack
- cpp, nodejs
- Domain
- compilers, testing-qa
Research direction
Start with deps/v8/src/base/platform/mutex.h around lines 121-125 and the crash site in deps/v8/src/common/code-memory-access.cc around line 149. Reproduce the intermittent failure on Linux x64 and inspect the linked ARM debug CI console and cctest stack histories; done means determining whether this is a false positive and documenting or implementing the appropriate suppression behavior.
Written by the indexing model from the issue text.
Description
> @targos: I wonder if it may be caused by https://github.com/nodejs/node/commit/96fde580b2227d49a2c935195ecf351f3e8bf099. I only rebased and added that commit.
I can reproduce the issue on a linux x64 machine in 3 out of 10 runs. I don't think it is related to https://github.com/nodejs/node/commit/96fde580b2227d49a2c935195ecf351f3e8bf099. The failure is an abseil deadlock detection based on the order of locked mutexes. This is only enabled on non-darwin platforms: https://github.com/targos/node/blob/1ed6e9890fd5dcf79489b54264f6dcf125b917fe/deps/v8/src/base/platform/mutex.h#L121-L125.
I doubt that if crash sites like https://github.com/targos/node/blob/1ed6e9890fd5dcf79489b54264f6dcf125b917fe/deps/v8/src/common/code-memory-access.cc#L149 are actual deadlocks. This could be a false-positive as the logs in https://ci.nodejs.org/job/node-test-commit-arm-debug/17748/nodes=ubuntu2204_debug-arm64/console suggest that the stack histories are from two distinct cctests.
Can we suppress abseil deadlock detection?
Originally posted by @legendecas in https://github.com/nodejs/node/issues/57114#issuecomment-2743925721
- Dominant language
- Shell
- Stars
- 466
- Forks
- 75
- PR merge metrics
- No merged PRs in 30d
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from nodejs/node-v8
-
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
-
Difficulty 4/5 3-5 days Newbie friendliness 45/100
-
Difficulty 4/5 3-5 days Newbie friendliness 45/100
-
Difficulty 3/5 1-2 days Newbie friendliness 45/100
-
Difficulty 4/5 3-5 days Newbie friendliness 15/100
Similar issues
-
Update Vish to 1.1.5 Openpackage-update
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
oSoWoSo/vOid_Community_repOsitory#144 · 1 comment ·
-
help wanted new command
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
tldr-pages/tldr#24151 ·
-
PacReq: Rune IDE Openpackage request
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
pacstall/pacstall-programs#9402 ·
-
[BUG] ci: the first prefetch-images.sh call runs before shard.txt exists, so it is always a no-op Openbug github-actions
Difficulty 2/5 1-3 hours Newbie friendliness 82/100
-
update-request
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
msys2/MINGW-packages#31768 ·