Small patch in OFED/sdp
Vijay Singh
vijju.singh at gmail.com
Tue Apr 2 18:33:20 UTC 2013
Hi, this is based on the the understanding that the SS_NBIO is a
socket state, and not a state of the socket buffer.
F9@[/u/vijay/bsd/CODE/cur/sys/ofed/drivers/infiniband/ulp/sdp]# svn diff
Index: sdp_main.c
===================================================================
--- sdp_main.c (revision 249029)
+++ sdp_main.c (working copy)
@@ -1267,7 +1267,7 @@
/* Socket buffer is empty and we shall not block. */
if (sb->sb_cc == 0 &&
- ((sb->sb_flags & SS_NBIO) || (flags & (MSG_DONTWAIT|MSG_NBIO)))) {
+ ((so->so_state & SS_NBIO) || (flags & (MSG_DONTWAIT|MSG_NBIO)))) {
error = EAGAIN;
goto out;
}
@@ -1297,7 +1297,7 @@
/* Socket buffer got some data that we shall deliver now. */
if (sb->sb_cc > 0 && !(flags & MSG_WAITALL) &&
- ((sb->sb_flags & SS_NBIO) ||
+ ((so->so_state & SS_NBIO) ||
(flags & (MSG_DONTWAIT|MSG_NBIO)) ||
sb->sb_cc >= sb->sb_lowat ||
sb->sb_cc >= uio->uio_resid ||
More information about the freebsd-net
mailing list