• Philippe Gerum's avatar
    evl/monitor: event: disable syscall restart on interrupted wait · 2f4ab84f
    Philippe Gerum authored
    When interrupted by a signal, a wait operation on a gated monitor
    should not be restarted automatically from kernel space, but reported
    to the user instead.
    Rationale: the mutex guarding the monitor was dropped prior to
    waiting, and must be re-acquired explicitly by an UNWAIT request when
    the interrupted status is detected from user-space. Consequently, we
    cannot retry a WAIT request without transitioning to user-space first.
    Add the T_NORST local information bit to the thread control block,
    which is set by the monitor wait operation, and tested by the syscall
    trampoline code for disabling automatic restart.
    Signed-off-by: Philippe Gerum's avatarPhilippe Gerum <rpm@xenomai.org>