Skip to contentSkip to conversation

nfs:Fix variable assignment for return value to caller in the function _nfs4_proc_delegreturn

PATCH Trond Myklebust 1 participant 1 message Aug 25, 2015 1 message not in the archive

Subsystems (2)
lore
Share & tools
lore

A message that is not in the archive (sent off-list or not yet received): [email protected]

#1 lore raw
Quoted 31 lines · Nicholas Krause

This fixes incorrect variable assignment in the function _nfs4_proc_delegreturn for when calling either one of the functions nfs_post_op_update_inode_force_wcc or the function nfs_refresh_inode due to the variable status which the function _nfs_proc_delegreturn uses for failure to instead properly assign to the variable status used for this function's return statement to properly signal to the caller when a failure occurs when calling here of these functions internally.

---
 fs/nfs/nfs4proc.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)
fs/nfs/nfs4proc.c +2 -3
index 3acb1eb..3a94a6e 100644
@@ -5353,9 +5353,9 @@ static int _nfs4_proc_delegreturn(struct inode *inode, struct rpc_cred *cred, co
                goto out;
        status = data->rpc_status;
        if (status == 0)
-               nfs_post_op_update_inode_force_wcc(inode, &data->fattr);
+               status = nfs_post_op_update_inode_force_wcc(inode, &data->fattr);
        else
-               nfs_refresh_inode(inode, &data->fattr);
+               status = nfs_refresh_inode(inode, &data->fattr);
 out:
        rpc_put_task(task);
        return status;
--
Quoted 2 lines

2.1.4

NACK. The success or failure of those 2 operations is completely immaterial to the success or failure of delegreturn, which is why we don't test their return values.