Function shim_freeSignalStack

Source
#[unsafe(no_mangle)]
pub unsafe extern "C-unwind" fn shim_freeSignalStack()
Expand description

§Safety

The current thread must exit before:

  • Another thread runs.
  • That thread also frees its stack.
  • This thread runs again on the signal stack (e.g. by handling a new signal).

Generally in the shim we rely on Shadow’s scheduling model to ensure this, since we know Shadow won’t permit another thread to run preemptively before the curent thread has a chance to finish exiting.