[PATCH-next] fs/cifs: Fix resource leak

From: Khaled ROMDHANI
Date: Tue May 04 2021 - 08:43:59 EST


The -EIO error return path is leaking memory allocated
to page. Fix this by invoking the free_dentry_path before
the return.

Addresses-Coverity: ("Resource leak")
Signed-off-by: Khaled ROMDHANI <khaledromdhani216@xxxxxxxxx>
---
fs/cifs/link.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/fs/cifs/link.c b/fs/cifs/link.c
index 1cbe7ec73728..1485c6095ba1 100644
--- a/fs/cifs/link.c
+++ b/fs/cifs/link.c
@@ -686,8 +686,10 @@ cifs_symlink(struct user_namespace *mnt_userns, struct inode *inode,
void *page = alloc_dentry_path();
struct inode *newinode = NULL;

- if (unlikely(cifs_forced_shutdown(cifs_sb)))
+ if (unlikely(cifs_forced_shutdown(cifs_sb))) {
+ free_dentry_path(page);
return -EIO;
+ }

xid = get_xid();

--
2.17.1