Skip to content

USE_TLS=0 not fork safe on Cygwin #2002

@embray

Description

@embray

As discussed at https://trac.sagemath.org/ticket/27213, enabling the new (I understand now that it is not actually "new" at all) level 3 threading code as done in #1765 has started to cause random hangs on Cygwin, particularly in code that forks new processes, likely leaving some thread-related primitives in an invalid state.

This isn't the first time I've had issues like this (#1450) but it seems there's something in the new threading code that also has bugs like this.

I'm afraid I haven't had time yet to track down the exact bug, although I intend to. But in the meantime I think it would be best to set USE_SIMPLE_THREADED_LEVEL3=1 by default on Cygwin, as was previously the case.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions