Skip to content
  • Philippe Gerum's avatar
    copperplate/threadobj: introduce remote agent for thread operations · e0791de2
    Philippe Gerum authored
    In shared multi-processing mode, cancelling remote threads or updating
    their scheduling parameters require going through an agent thread,
    running on the process they belong to.
    
    This patch series introduces such mechanism, so that
    threadobj_cancel() and threadobj_set_priority() work transparently,
    regardless of whether or not the target thread runs in the current
    process.
    
    CAUTION: remote operations are implemented by a fully asynchronous
    protocol. The status returned to a caller for an operation affecting a
    remote thread, tells whether the request was successfully sent to the
    agent, but does not reflect the final operation status in the remote
    process. The remote agent will issue a warning message in case of
    failure to carry out an operation though.
    e0791de2