Skip to content
  • Philippe Gerum's avatar
    cobalt/thread: add schedparam lazy propagation · d731b977
    Philippe Gerum authored
    Provide a mechanism for carrying out a lazy propagation of schedparam
    updates to the regular kernel, so that userland does not have to
    switch to secondary mode for this.
    
    When userland issues sc_cobalt_thread_setschedparam_ex for updating
    the scheduling parameters of a Xenomai thread, a request for
    propagating this change to the regular kernel is made pending. Such
    request will be committed later, either when:
    
    - the thread relaxes if it is running in primary mode when the update
      request is received;
    
    - next time the thread calls back into the Cobalt core as a result of
      receiving a HOME action from a SIGSHADOW notification, which is sent
      if such thread was relaxed at the time of the update request.
    
    As a result, the target thread will have propagated the schedparams
    update to the regular kernel as soon as it resumes (relaxed) execution
    in user-space.
    d731b977