Skip to content

Commit eee4a11

Browse files
martinetdericvh
authored andcommitted
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: 89c58cb ("fs/9p: fix error reporting in v9fs_dir_release") Cc: [email protected] Reviewed-by: Simon Horman <[email protected]> Signed-off-by: Dominique Martinet <[email protected]> Signed-off-by: Eric Van Hensbergen <[email protected]>
1 parent 350cd9b commit eee4a11

File tree

1 file changed

+3
-2
lines changed

1 file changed

+3
-2
lines changed

fs/9p/vfs_dir.c

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -208,7 +208,7 @@ int v9fs_dir_release(struct inode *inode, struct file *filp)
208208
struct p9_fid *fid;
209209
__le32 version;
210210
loff_t i_size;
211-
int retval = 0;
211+
int retval = 0, put_err;
212212

213213
fid = filp->private_data;
214214
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)
221221
spin_lock(&inode->i_lock);
222222
hlist_del(&fid->ilist);
223223
spin_unlock(&inode->i_lock);
224-
retval = p9_fid_put(fid);
224+
put_err = p9_fid_put(fid);
225+
retval = retval < 0 ? retval : put_err;
225226
}
226227

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

0 commit comments

Comments
 (0)