]> err.no Git - linux-2.6/commitdiff
nfsd: reorder printk in do_probe_callback to avoid use-after-free
authorJ. Bruce Fields <bfields@citi.umich.edu>
Mon, 5 May 2008 23:47:29 +0000 (19:47 -0400)
committerJ. Bruce Fields <bfields@citi.umich.edu>
Sun, 18 May 2008 23:13:07 +0000 (19:13 -0400)
We're currently dereferencing the client after we drop our reference
count to it.

Signed-off-by: J. Bruce Fields <bfields@citi.umich.edu>
fs/nfsd/nfs4callback.c

index 0b3ffa9840c20e0530ee4f9de9aa423cb813fc52..4d4760e687c351a3dead64752d67ec7ce622a1c7 100644 (file)
@@ -419,9 +419,9 @@ static int do_probe_callback(void *data)
 out_release_client:
        rpc_shutdown_client(client);
 out_err:
-       put_nfs4_client(clp);
        dprintk("NFSD: warning: no callback path to client %.*s\n",
                (int)clp->cl_name.len, clp->cl_name.data);
+       put_nfs4_client(clp);
        return status;
 }