Re: rt_task_unblock() POSIX alternative

Petr Červenka grugh at
Thu Apr 9 20:10:57 CEST 2020

> Don't use signal().
> Use sigaction() and *don't* set SA_RESTART. Maybe read() is always restarted...
Thank you for trying to help me.
But with the sigaction (without SA_RESTART) the behavior is completely the same:
Only Ctrl+C or kill(0, SIGINT) are able to invoke the signalHandler.The read() is not interrupted (maybe syscall restart in some inner cycle).Example of the signal handler setup:
    // Setup signal handler
    struct sigaction act;
    memset(&act, 0, sizeof (act));
    act.sa_handler = signalHandler;
    sigaction(SIGINT, &act, NULL);
    sigaction(SIGTERM, &act, NULL);

More information about the Xenomai mailing list