Skip to content

Spawning / Forking a process on QNX Neutrino can fail #108594

Closed
@flba-eb

Description

@flba-eb
Contributor

This only applies to the Tier 3 target QNX Neutrino OS versions 7.1 and before.

When a process runs fork/spawn in one thread and changes existing file descriptors in another thread at the same time, fork/spawn can fail. This seems not to be very common on applications, but happens a lot in Rusts test suites and remote-test-server.

As of #106673, Rusts standard library retries four times (as suggested by QNX' documentation), but this can be insufficient. Up to 150 retries have been observed when running the test suite.

See #106673 for more details.

cc: @gh-tr

@rustbot label +O-neutrino

Activity

added
O-neutrinoOS: QNX Neutrino, a POSIX-compatible real-time operating system
on Mar 1, 2023
added a commit that references this issue on Jun 3, 2023

Auto merge of rust-lang#109432 - flba-eb:108594_forkspawn_exponential…

1e17cef
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

    C-bugCategory: This is a bug.O-neutrinoOS: QNX Neutrino, a POSIX-compatible real-time operating system

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

      Development

      Participants

      @rustbot@flba-eb

      Issue actions

        Spawning / Forking a process on QNX Neutrino can fail · Issue #108594 · rust-lang/rust