SUPERVISOR in miri::shims::native_lib::trace::child - Rust
Description: A handle to the single, shared supervisor process across all `MiriMachine`s. Since it would be very difficult to trace multiple FFI calls in parallel, we need to ensure that either (a) only one `MiriMachine` is performing an FFI call at any given time, or (b) there are distinct supervisor and child processes for each machine. The former was chosen here.

Skip to main content

## SUPERVISOR

# Static SUPERVISOR

Source

    static SUPERVISOR: Mutex<Option<Supervisor>>

Expand description

A handle to the single, shared supervisor process across all `MiriMachine`s. Since it would be very difficult to trace multiple FFI calls in parallel, we need to ensure that either (a) only one `MiriMachine` is performing an FFI call at any given time, or (b) there are distinct supervisor and child processes for each machine. The former was chosen here.

This should only contain a `None` if the supervisor has not (yet) been initialised; otherwise, if `init_sv` was called and did not error, this will always be nonempty.