Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
evl/monitor: event: differentiate causes for interrupted wait
A wait operation can be interrupted for the following reasons: - a signal was received while waiting for the event. - the caller got forcibly unblocked while waiting for the event. - a signal was received or the caller got forcibly unblocked while trying to reacquire the lock once the event was successfully received. Ensure these conditions are differentiated when returning to the caller via the operation status (req.status), which enables the user interface to decide whether it needs to restart the syscall transparently after some fixups on signal receipt, or bail out on error if forcibly unblocked for any other reason. This change causes a bump of the current ABI version (Freescale#28). However, it does not affect current and older libevl releases since none of them check the operation status when an interrupted wait is detected. Signed-off-by: Philippe Gerum <rpm@xenomai.org>
- Loading branch information