Skip to content

Spurious LLDB segfault (signal 11) #45230

Closed
@kennytm

Description

@kennytm
Member

Symptom: debuginfo-lldb tests failed with signal 11. Only happens on macOS (others use GDB) and usually i686, and only one test is failing.

Example logs (look for "status: signal: 11"):

[01:40:10] failures:
[01:40:10] 
[01:40:10] ---- [debuginfo-lldb] debuginfo/lexical-scopes-in-block-expression.rs stdout ----
[01:40:10] 	NOTE: compiletest thinks it is using LLDB version 360
[01:40:10] 
[01:40:10] error: Error while running LLDB
[01:40:10] status: signal: 11
[01:40:10] command: "/usr/bin/python" "/Users/travis/build/rust-lang/rust/src/etc/lldb_batchmode.py" "/Users/travis/build/rust-lang/rust/build/x86_64-apple-darwin/test/debuginfo/lexical-scopes-in-block-expression.stage2-x86_64-apple-darwin" "/Users/travis/build/rust-lang/rust/build/x86_64-apple-darwin/test/debuginfo/lexical-scopes-in-block-expression.debugger.script"
[01:40:10] stdout:
[01:40:10] ------------------------------------------
[01:40:10] LLDB batch-mode script
[01:40:10] ----------------------
...

Affected PRs:

Related: #42693 (GDB failed due to ERROR_NOT_ENOUGH_QUOTA on Windows)

Activity

added
A-spuriousArea: Spurious failures in builds (spuriously == for no apparent reason)
C-tracking-issueCategory: An issue tracking the progress of sth. like the implementation of an RFC
on Oct 12, 2017
Mark-Simulacrum

Mark-Simulacrum commented on Nov 5, 2017

@Mark-Simulacrum
Member

I wasn't able to reproduce the failure locally, but it seems like the problem might be with Python segfaulting, not LLDB. Below is the crashes log from #44967 (comment), and the first one seems to indicate that Python crashed. Maybe we can print that failure out or something? It seems possible that our Python batchmode script or our formatter script for LLDB has some thread race or something like that that causes the crash here....

�[0K$ ls $HOME/Library/Logs/DiagnosticReports/
Python_2017-10-12-005820_Traviss-Mac-28.crash
abort-link-to-unwinding-crates.stage2-x86_64-apple-darwin_2017-10-12-004319_Traviss-Mac-28.crash
abort.stage2-x86_64-apple-darwin_2017-10-12-004318_Traviss-Mac-28.crash
backtrace.stage2-x86_64-apple-darwin_2017-10-12-003318-1_Traviss-Mac-28.crash
backtrace.stage2-x86_64-apple-darwin_2017-10-12-003318_Traviss-Mac-28.crash
com.apple.CoreSimulator.CoreSimulatorService_2016-11-16-181716_Traviss-Mac.crash
issue-24313.stage2-x86_64-apple-darwin_2017-10-12-003832_Traviss-Mac-28.crash
lto-abort.stage2-x86_64-apple-darwin_2017-10-12-004323_Traviss-Mac-28.crash
out-of-stack.stage2-x86_64-apple-darwin_2017-10-12-004302-1_Traviss-Mac-28.crash
out-of-stack.stage2-x86_64-apple-darwin_2017-10-12-004302-2_Traviss-Mac-28.crash
out-of-stack.stage2-x86_64-apple-darwin_2017-10-12-004302_Traviss-Mac-28.crash
out-of-stack.stage2-x86_64-apple-darwin_2017-10-12-004303_Traviss-Mac-28.crash
running-with-no-runtime.stage2-x86_64-apple-darwin_2017-10-12-004425_Traviss-Mac-28.crash
segfault-no-out-of-stack.stage2-x86_64-apple-darwin_2017-10-12-004426_Traviss-Mac-28.crash
signal-exit-status.stage2-x86_64-apple-darwin_2017-10-12-004443_Traviss-Mac-28.crash
stack-probes-lto.stage2-x86_64-apple-darwin_2017-10-12-004515-1_Traviss-Mac-28.crash
stack-probes-lto.stage2-x86_64-apple-darwin_2017-10-12-004515_Traviss-Mac-28.crash
stack-probes.stage2-x86_64-apple-darwin_2017-10-12-004512-1_Traviss-Mac-28.crash
stack-probes.stage2-x86_64-apple-darwin_2017-10-12-004512_Traviss-Mac-28.crash
kennytm

kennytm commented on Nov 5, 2017

@kennytm
MemberAuthor

Ooooohhhhh that's an interesting point. I was puzzled that why there's no LLDB crash log, turns out it is Python crashing! I'll try to cat the crash log if the filename doesn't contain "stage2".

added a commit that references this issue on Nov 10, 2017

Rollup merge of rust-lang#45783 - kennytm:compiler-test-fixes, r=alex…

added
T-infraRelevant to the infrastructure team, which will review and decide on the PR/issue.
C-bugCategory: This is a bug.
and removed
C-bugCategory: This is a bug.
on Nov 26, 2019
added
C-external-bugCategory: issue that is caused by bugs in software beyond our control
A-testsuiteArea: The testsuite used to check the correctness of rustc
A-pythonArea: python, like bootstrap/CI scripts or linters/formatters, etc.
on Dec 6, 2024
jieyouxu

jieyouxu commented on Dec 6, 2024

@jieyouxu
Member

Triage: haven't seen activity on this for a good while, it's likely that newer python versions addressed this. Closing as inactive in favor of newer more specific issues.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    A-pythonArea: python, like bootstrap/CI scripts or linters/formatters, etc.A-spuriousArea: Spurious failures in builds (spuriously == for no apparent reason)A-testsuiteArea: The testsuite used to check the correctness of rustcC-external-bugCategory: issue that is caused by bugs in software beyond our controlC-tracking-issueCategory: An issue tracking the progress of sth. like the implementation of an RFCT-infraRelevant to the infrastructure team, which will review and decide on the PR/issue.

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

      Development

      No branches or pull requests

        Participants

        @kennytm@jonas-schievink@Mark-Simulacrum@jieyouxu

        Issue actions

          Spurious LLDB segfault (signal 11) · Issue #45230 · rust-lang/rust