nfsd: fix NULL pointer dereference in cld_pipe_downcall
authorJeff Layton <jlayton@redhat.com>
Wed, 28 Mar 2012 11:36:01 +0000 (07:36 -0400)
committerJ. Bruce Fields <bfields@redhat.com>
Wed, 28 Mar 2012 14:10:24 +0000 (10:10 -0400)
If we find that "cup" is NULL in this case, then we obviously don't
want to dereference it. What we really want to print in this case
is the xid that we copied off earlier.

Reported-by: Dan Carpenter <dan.carpenter@oracle.com>
Signed-off-by: Jeff Layton <jlayton@redhat.com>
Signed-off-by: J. Bruce Fields <bfields@redhat.com>
fs/nfsd/nfs4recover.c

index 21b53d57432cfdcab5545df6d56a494403450cd5..eaaf9482c7f5cd2828b08d2dceb742668c56ed59 100644 (file)
@@ -602,8 +602,7 @@ cld_pipe_downcall(struct file *filp, const char __user *src, size_t mlen)
 
        /* couldn't find upcall? */
        if (!cup) {
-               dprintk("%s: couldn't find upcall -- xid=%u\n", __func__,
-                       cup->cu_msg.cm_xid);
+               dprintk("%s: couldn't find upcall -- xid=%u\n", __func__, xid);
                return -EINVAL;
        }