Unverified Commit eee4a119 authored by Dominique Martinet's avatar Dominique Martinet Committed by Eric Van Hensbergen
Browse files

9p: fix ignored return value in v9fs_dir_release



retval from filemap_fdatawrite was immediately overwritten by the
following p9_fid_put: preserve any error in fdatawrite if there
was any first.

This fixes the following scan-build warning:
fs/9p/vfs_dir.c:220:4: warning: Value stored to 'retval' is never read [deadcode.DeadStores]
                        retval = filemap_fdatawrite(inode->i_mapping);
                        ^        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Fixes: 89c58cb3 ("fs/9p: fix error reporting in v9fs_dir_release")
Cc: stable@vger.kernel.org
Reviewed-by: default avatarSimon Horman <simon.horman@corigine.com>
Signed-off-by: default avatarDominique Martinet <asmadeus@codewreck.org>
Signed-off-by: default avatarEric Van Hensbergen <ericvh@kernel.org>
parent 350cd9b9
Loading
Loading
Loading
Loading
+3 −2
Original line number Diff line number Diff line
@@ -208,7 +208,7 @@ int v9fs_dir_release(struct inode *inode, struct file *filp)
	struct p9_fid *fid;
	__le32 version;
	loff_t i_size;
	int retval = 0;
	int retval = 0, put_err;

	fid = filp->private_data;
	p9_debug(P9_DEBUG_VFS, "inode: %p filp: %p fid: %d\n",
@@ -221,7 +221,8 @@ int v9fs_dir_release(struct inode *inode, struct file *filp)
		spin_lock(&inode->i_lock);
		hlist_del(&fid->ilist);
		spin_unlock(&inode->i_lock);
		retval = p9_fid_put(fid);
		put_err = p9_fid_put(fid);
		retval = retval < 0 ? retval : put_err;
	}

	if ((filp->f_mode & FMODE_WRITE)) {