svcrpc: remove handling of unknown errors from svc_recv

svc_recv() returns only -EINTR or -EAGAIN.  If we really want to worry
about the case where it has a bug that causes it to return something
else, we could stick a WARN() in svc_recv.  But it's silly to require
every caller to have all this boilerplate to handle that case.

Signed-off-by: J. Bruce Fields <bfields@redhat.com>
This commit is contained in:
J. Bruce Fields
2012-08-17 21:47:53 -04:00
parent 9f9d2ebe69
commit 5b444cc9a4
3 changed files with 5 additions and 40 deletions

View File

@@ -45,7 +45,7 @@ unsigned short nfs_callback_tcpport6;
static int
nfs4_callback_svc(void *vrqstp)
{
int err, preverr = 0;
int err;
struct svc_rqst *rqstp = vrqstp;
set_freezable();
@@ -55,20 +55,8 @@ nfs4_callback_svc(void *vrqstp)
* Listen for a request on the socket
*/
err = svc_recv(rqstp, MAX_SCHEDULE_TIMEOUT);
if (err == -EAGAIN || err == -EINTR) {
preverr = err;
if (err == -EAGAIN || err == -EINTR)
continue;
}
if (err < 0) {
if (err != preverr) {
printk(KERN_WARNING "NFS: %s: unexpected error "
"from svc_recv (%d)\n", __func__, err);
preverr = err;
}
schedule_timeout_uninterruptible(HZ);
continue;
}
preverr = err;
svc_process(rqstp);
}
return 0;