[PATCH] fuse: drop redundant err assignment in fuse_create_open()
From: Li Wang
Date: Wed Apr 08 2026 - 23:06:27 EST
In fuse_create_open(), err is initialized to -ENOMEM immediately before
the fuse_alloc_forget() NULL check. If forget allocation fails,
it branches to out_err with that value. If it succeeds, it falls through
without modifying err, so err is still -ENOMEM at the point where
fuse_file_alloc() is called. The second err = -ENOMEM before
fuse_file_alloc() therefore is redundant.
Removing this redundant assignment not only improves performance
but also makes the intended error semantics obvious: a single ENOMEM
initialization covers both allocation failure exits that share
this prelude.
Signed-off-by: Li Wang <liwang@xxxxxxxxxx>
---
fs/fuse/dir.c | 1 -
1 file changed, 1 deletion(-)
diff --git a/fs/fuse/dir.c b/fs/fuse/dir.c
index f7443ca37e35..b118cf23d41a 100644
--- a/fs/fuse/dir.c
+++ b/fs/fuse/dir.c
@@ -838,7 +838,6 @@ static int fuse_create_open(struct mnt_idmap *idmap, struct inode *dir,
if (!forget)
goto out_err;
- err = -ENOMEM;
ff = fuse_file_alloc(fm, true);
if (!ff)
goto out_put_forget_req;
--
2.34.1