]> git.karo-electronics.de Git - karo-tx-linux.git/blobdiff - net/sunrpc/svcsock.c
svcrpc: make xpo_recvfrom return only >=0
[karo-tx-linux.git] / net / sunrpc / svcsock.c
index 406688baac576d72fdd70e0e02692f641b660dde..7aee54c3fe4615e4a392fa69e686189ba9aa064a 100644 (file)
@@ -598,7 +598,7 @@ static int svc_udp_recvfrom(struct svc_rqst *rqstp)
                        dprintk("svc: recvfrom returned error %d\n", -err);
                        set_bit(XPT_DATA, &svsk->sk_xprt.xpt_flags);
                }
-               return -EAGAIN;
+               return 0;
        }
        len = svc_addr_len(svc_addr(rqstp));
        rqstp->rq_addrlen = len;
@@ -1174,13 +1174,13 @@ error:
        if (len != -EAGAIN)
                goto err_other;
        dprintk("RPC: TCP recvfrom got EAGAIN\n");
-       return -EAGAIN;
+       return 0;
 err_other:
        printk(KERN_NOTICE "%s: recvfrom returned errno %d\n",
               svsk->sk_xprt.xpt_server->sv_name, -len);
        set_bit(XPT_CLOSE, &svsk->sk_xprt.xpt_flags);
 err_noclose:
-       return -EAGAIN; /* record not complete */
+       return 0;       /* record not complete */
 }
 
 /*