[PATCH] fuse: fix memory leak in fuse_create_open

From: yangyun
Date: Fri Aug 23 2024 - 04:52:48 EST


The memory of struct fuse_file is allocated but not freed
when get_create_ext return error.

Fixes: 3e2b6fdbdc9a ("fuse: send security context of inode on file")
Cc: stable@xxxxxxxxxxxxxxx
Signed-off-by: yangyun <yangyun50@xxxxxxxxxx>
---
fs/fuse/dir.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/fs/fuse/dir.c b/fs/fuse/dir.c
index 2b0d4781f394..8e96df9fd76c 100644
--- a/fs/fuse/dir.c
+++ b/fs/fuse/dir.c
@@ -670,7 +670,7 @@ static int fuse_create_open(struct inode *dir, struct dentry *entry,

err = get_create_ext(&args, dir, entry, mode);
if (err)
- goto out_put_forget_req;
+ goto out_free_ff;

err = fuse_simple_request(fm, &args);
free_ext_value(&args);
--
2.33.0