diff options
author | Chuhong Yuan <hslester96@gmail.com> | 2019-10-14 10:15:31 +0300 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2019-10-29 11:22:38 +0300 |
commit | 0715022a4f6dbd7c7b830007b2a00d5a9f06d66c (patch) | |
tree | 977e5e5ec6cdd3e4ea4643a4d563baf9ea80318e /fs | |
parent | dfebd925c3fccc95aacb9e108455701e7c187de8 (diff) | |
download | linux-0715022a4f6dbd7c7b830007b2a00d5a9f06d66c.tar.xz |
cifs: Fix missed free operations
commit 783bf7b8b641167fb6f3f4f787f60ae62bad41b3 upstream.
cifs_setattr_nounix has two paths which miss free operations
for xid and fullpath.
Use goto cifs_setattr_exit like other paths to fix them.
CC: Stable <stable@vger.kernel.org>
Fixes: aa081859b10c ("cifs: flush before set-info if we have writeable handles")
Signed-off-by: Chuhong Yuan <hslester96@gmail.com>
Signed-off-by: Steve French <stfrench@microsoft.com>
Reviewed-by: Pavel Shilovsky <pshilov@microsoft.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'fs')
-rw-r--r-- | fs/cifs/inode.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/fs/cifs/inode.c b/fs/cifs/inode.c index 79d9a60f21ba..3c952024e10f 100644 --- a/fs/cifs/inode.c +++ b/fs/cifs/inode.c @@ -2465,9 +2465,9 @@ cifs_setattr_nounix(struct dentry *direntry, struct iattr *attrs) rc = tcon->ses->server->ops->flush(xid, tcon, &wfile->fid); cifsFileInfo_put(wfile); if (rc) - return rc; + goto cifs_setattr_exit; } else if (rc != -EBADF) - return rc; + goto cifs_setattr_exit; else rc = 0; } |