X-Git-Url: https://git.openpandora.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=net%2Fsocket.c;h=5e8d0af3c0e73b3537c1852eee2c15a917e4a605;hb=97b2073ff04814a7f2fef5fe0e82bb008cad7d8e;hp=769c386bd4288758635acde6ca77c401a49c61a8;hpb=441f4058a04b2943685ff94e0f5f1992b0b3649e;p=pandora-kernel.git diff --git a/net/socket.c b/net/socket.c index 769c386bd428..5e8d0af3c0e7 100644 --- a/net/socket.c +++ b/net/socket.c @@ -87,6 +87,7 @@ #include #include #include +#include #include #include @@ -2135,6 +2136,10 @@ int __sys_recvmmsg(int fd, struct mmsghdr __user *mmsg, unsigned int vlen, break; ++datagrams; + /* MSG_WAITFORONE turns on MSG_DONTWAIT after one packet */ + if (flags & MSG_WAITFORONE) + flags |= MSG_DONTWAIT; + if (timeout) { ktime_get_ts(timeout); *timeout = timespec_sub(end_time, *timeout);