[PATCH 19/32] Unionfs: partial_lookup update

From: Josef 'Jeff' Sipek
Date: Sun Sep 02 2007 - 22:37:55 EST


From: Erez Zadok <ezk@xxxxxxxxxxxxx>

Handle new semantics of lookup_backend.

Signed-off-by: Erez Zadok <ezk@xxxxxxxxxxxxx>
Signed-off-by: Josef 'Jeff' Sipek <jsipek@xxxxxxxxxxxxx>
---
fs/unionfs/lookup.c | 22 ++++++++++++++++------
1 files changed, 16 insertions(+), 6 deletions(-)

diff --git a/fs/unionfs/lookup.c b/fs/unionfs/lookup.c
index e4e8470..d05daa5 100644
--- a/fs/unionfs/lookup.c
+++ b/fs/unionfs/lookup.c
@@ -425,20 +425,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. */
--
1.5.2.2.238.g7cbf2f2

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/