Skip to content

Improve deadlock diagnostics #3424

Closed
@RalfJung

Description

@RalfJung

We only report a deadlock when all threads are blocked. But we only show a backtrace of the last thread that took a step, which may even be the empty backtrace if that thread is now done.

We should probably show a backtrace of all remaining (non-terminated) threads instead. And maybe we can even show what they are blocked on. That will require tracking a bit more information in the thread state -- but doing so would be good anyway as it can help sanity-check that on unblockng we are talking about the right thread.

Metadata

Metadata

Assignees

No one assigned

    Labels

    A-concurrencyArea: affects our concurrency (multi-thread) supportA-diagnosticserrors and warnings emitted by miriC-enhancementCategory: a PR with an enhancement or an issue tracking an accepted enhancementE-good-first-issueA good way to start contributing, mentoring is available

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions