9p: Uninitialized variable in v9fs_writeback_fid()
authorDan Carpenter <dan.carpenter@oracle.com>
Tue, 1 Dec 2020 07:04:12 +0000 (23:04 -0800)
committerDominique Martinet <asmadeus@codewreck.org>
Tue, 1 Dec 2020 07:18:57 +0000 (08:18 +0100)
If v9fs_fid_lookup_with_uid() fails then "fid" is not initialized.

The v9fs_fid_lookup_with_uid() can't return NULL.  If it returns an
error pointer then we can still pass that to clone_fid() and it will
return the error pointer back again.

Fixes: 6636b6dcc3db ("9p: add refcount to p9_fid struct")
Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
Signed-off-by: Dominique Martinet <asmadeus@codewreck.org>
fs/9p/fid.c

index 50118ec..79837f1 100644 (file)
@@ -302,8 +302,7 @@ struct p9_fid *v9fs_writeback_fid(struct dentry *dentry)
        struct p9_fid *fid, *ofid;
 
        ofid = v9fs_fid_lookup_with_uid(dentry, GLOBAL_ROOT_UID, 0);
-       if (ofid && !IS_ERR(ofid))
-               fid = clone_fid(ofid);
+       fid = clone_fid(ofid);
        if (IS_ERR(fid))
                goto error_out;
        p9_client_clunk(ofid);