From: Erez_Zadok Date: Mon, 28 May 2007 23:39:44 +0000 (-0400) Subject: cleanup: rewrite unionfs_partial_lookup more cleanly and add comments X-Git-Tag: unionfs-2.1.1~78 X-Git-Url: https://git.fsl.cs.sunysb.edu/?a=commitdiff_plain;h=957b016e9d2ddcc65e620a3758a7e1d5f53a5386;p=unionfs-2.6.37.y.git cleanup: rewrite unionfs_partial_lookup more cleanly and add comments Signed-off-by: Erez Zadok --- diff --git a/fs/unionfs/lookup.c b/fs/unionfs/lookup.c index ead0c6ac806..5c2334e6e35 100644 --- a/fs/unionfs/lookup.c +++ b/fs/unionfs/lookup.c @@ -422,20 +422,30 @@ out: return ERR_PTR(err); } -/* This is a utility function that fills in a unionfs dentry */ +/* + * This is a utility function that fills in a unionfs dentry. + * + * Returns: 0 (ok), or -ERRNO if an error occurred. + */ int unionfs_partial_lookup(struct dentry *dentry) { struct dentry *tmp; struct nameidata nd = { .flags = 0 }; + int err = -ENOSYS; tmp = unionfs_lookup_backend(dentry, &nd, INTERPOSE_PARTIAL); - if (!tmp) - return 0; - if (IS_ERR(tmp)) - return PTR_ERR(tmp); + if (!tmp) { + err = 0; + goto out; + } + if (IS_ERR(tmp)) { + err = PTR_ERR(tmp); + goto out; + } /* need to change the interface */ BUG_ON(tmp != dentry); - return -ENOSYS; +out: + return err; } /* The dentry cache is just so we have properly sized dentries. */