fuse: remove dead code in fuse_lookup_name()
Subsystems (2)
PATCH v2 1/1 fuse: remove dead code in fuse_lookup_name()
We check "outarg->nodeid" twice in a row and it causes a static checker warning. We should return success if "outarg->nodeid" is zero so the first check is correct and the second one should be deleted.
Signed-off-by Dan Carpenter <[email protected]>
---
v2: The first version of this patch introduced a bug into working code.
(returning error instead of success). Sorry. :(
fs/fuse/dir.c +2 -3
@@ -306,11 +306,10 @@ int fuse_lookup_name(struct super_block *sb, u64 nodeid, struct qstr *name,fuse_lookup_init (fc, &args, nodeid, name, outarg); err =fuse_simple_request (fc, &args); -/* Zero nodeid is same as -ENOENT, but with valid timeout */ -if (err || !outarg->nodeid) +if (err) goto out_put_forget; - err = -EIO ; +/* Zero nodeid is same as -ENOENT, but with valid timeout */ if (!outarg->nodeid) goto out_put_forget;if (!fuse_valid_type (outarg->attr.mode))
Oh... Crap. I suck. Sorry, ignore this patch. It's buggy as well.
I'm so really really sorry.
regards,
dan carpenter
Quoted 27 lines · Dan Carpenter
We check "
outarg->nodeid" twice in a row and it causes a static checker warning. We should return success if "outarg->nodeid" is zero so the first check is correct and the second one should be deleted.Signed-off-by Dan Carpenter <[email protected]>---
v2: The first version of this patch introduced a bug into working code.(returning error instead of success). Sorry. :(fs/fuse/dir.c +2
-3@@ -306,11 +306,10 @@ int fuse_lookup_name(struct super_block *sb, u64 nodeid, struct qstr *name,fuse_lookup_init (fc, &args, nodeid, name, outarg); err =fuse_simple_request (fc, &args); -/* Zero nodeid is same as -ENOENT, but with valid timeout */ -if (err || !outarg->nodeid) +if (err) goto out_put_forget; - err = -EIO ; +/* Zero nodeid is same as -ENOENT, but with valid timeout */ if (!outarg->nodeid) goto out_put_forget;if (!fuse_valid_type (outarg->attr.mode))