Skip to content

Potential deadlock detected: Primitive: 18:1 in 2.0.0-alpha.180 #2823

@addshore

Description

@addshore

Reported in a thread at https://discord.com/channels/918498540232253480/1373951179188342874

@floitsch mentioned Events::register_monitor_notifier

PRIMITIVE(register_monitor_notifier, 3) \

update_resource_monitor starts with Locker locker(mutex_) so this could actually be a real deadlock.

The code that triggered it makes use of Latches and Channels
Channels working as message inboxes / queues for processing
Latches working as things to wait for responses to messages that are potentially being sent
The channels are rather high throughput

https://github.com/lightbug-io/toit-lightbug/blob/c21685cd73315e641f7b84c3a229c8d327d300d7/src/services/comms/comms.toit

Some other discussion also happened in the thread on discord, and a snapshot file was provided to @floitsch and @kasperl via DM of the container that triggered the issue.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions