Module: xenomai-3 Branch: stable-3.0.x Commit: b4153ea423873ba9acf120b9ce088bacbc20ec48 URL: http://git.xenomai.org/?p=xenomai-3.git;a=commit;h=b4153ea423873ba9acf120b9ce088bacbc20ec48
Author: Philippe Gerum <[email protected]> Date: Fri Jan 26 10:46:02 2018 +0100 cobalt/rtdm: honor O_NONBLOCK on recvmsg(), sendmsg() --- kernel/cobalt/rtdm/fd.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/kernel/cobalt/rtdm/fd.c b/kernel/cobalt/rtdm/fd.c index b4d3920..b97e917 100644 --- a/kernel/cobalt/rtdm/fd.c +++ b/kernel/cobalt/rtdm/fd.c @@ -563,6 +563,9 @@ ssize_t rtdm_fd_recvmsg(int ufd, struct user_msghdr *msg, int flags) trace_cobalt_fd_recvmsg(current, fd, ufd, flags); + if (fd->oflags & O_NONBLOCK) + flags |= MSG_DONTWAIT; + if (ipipe_root_p) ret = fd->ops->recvmsg_nrt(fd, msg, flags); else @@ -595,6 +598,9 @@ ssize_t rtdm_fd_sendmsg(int ufd, const struct user_msghdr *msg, int flags) trace_cobalt_fd_sendmsg(current, fd, ufd, flags); + if (fd->oflags & O_NONBLOCK) + flags |= MSG_DONTWAIT; + if (ipipe_root_p) ret = fd->ops->sendmsg_nrt(fd, msg, flags); else _______________________________________________ Xenomai-git mailing list [email protected] https://xenomai.org/mailman/listinfo/xenomai-git
