nfsd4: fix do_probe_callback errors
authorJ. Bruce Fields <bfields@citi.umich.edu>
Sun, 22 Feb 2009 23:52:13 +0000 (15:52 -0800)
committerJ. Bruce Fields <bfields@citi.umich.edu>
Wed, 18 Mar 2009 21:38:39 +0000 (17:38 -0400)
The errors returned aren't used.  Just return 0 and make them available
to a dprintk().  Also, consistently use -ERRNO errors instead of nfs
errors.

Signed-off-by: J. Bruce Fields <bfields@citi.umich.edu>
Reviewed-by: Benny Halevy <bhalevy@panasas.com>
fs/nfsd/nfs4callback.c

index 5dcd38e5f13804e58e66b5a295baf07aaad2e3a0..8d55f5047503d92266cebd76b1cfe47347444755 100644 (file)
@@ -389,12 +389,10 @@ static int do_probe_callback(void *data)
                .rpc_argp       = clp,
        };
        struct rpc_clnt *client;
-       int status;
+       int status = -EINVAL;
 
-       if (!clp->cl_principal && (clp->cl_flavor >= RPC_AUTH_GSS_KRB5)) {
-               status = nfserr_cb_path_down;
+       if (!clp->cl_principal && (clp->cl_flavor >= RPC_AUTH_GSS_KRB5))
                goto out_err;
-       }
 
        /* Initialize address */
        memset(&addr, 0, sizeof(addr));
@@ -405,8 +403,9 @@ static int do_probe_callback(void *data)
        /* Create RPC client */
        client = rpc_create(&args);
        if (IS_ERR(client)) {
-               dprintk("NFSD: couldn't create callback client\n");
                status = PTR_ERR(client);
+               dprintk("NFSD: couldn't create callback client: %d\n",
+                                                               status);
                goto out_err;
        }
 
@@ -422,10 +421,10 @@ static int do_probe_callback(void *data)
 out_release_client:
        rpc_shutdown_client(client);
 out_err:
-       dprintk("NFSD: warning: no callback path to client %.*s\n",
-               (int)clp->cl_name.len, clp->cl_name.data);
+       dprintk("NFSD: warning: no callback path to client %.*s: error %d\n",
+               (int)clp->cl_name.len, clp->cl_name.data, status);
        put_nfs4_client(clp);
-       return status;
+       return 0;
 }
 
 /*