From: Junjiro Okajima <hooanon05@xxxxxxxxxxx> incorporate aufs, export __lookup_hash() and deeper lockdep Signed-off-by: Junjiro Okajima <hooanon05@xxxxxxxxxxx> --- fs/Kconfig | 2 ++ fs/Makefile | 1 + fs/namei.c | 2 +- include/linux/lockdep.h | 4 ++++ include/linux/namei.h | 1 + 5 files changed, 9 insertions(+), 1 deletions(-) diff --git a/fs/Kconfig b/fs/Kconfig index 379eb47..6df842f 100644 --- a/fs/Kconfig +++ b/fs/Kconfig @@ -1072,6 +1072,8 @@ config UNION_FS_DEBUG help If you say Y here, you can turn on debugging output from Unionfs. +source "fs/aufs/Kconfig" + endmenu menu "Miscellaneous filesystems" diff --git a/fs/Makefile b/fs/Makefile index 7996220..bc5964a 100644 --- a/fs/Makefile +++ b/fs/Makefile @@ -121,3 +121,4 @@ obj-$(CONFIG_DEBUG_FS) += debugfs/ obj-$(CONFIG_OCFS2_FS) += ocfs2/ obj-$(CONFIG_GFS2_FS) += gfs2/ obj-$(CONFIG_UNION_FS) += unionfs/ +obj-$(CONFIG_AUFS) += aufs/ diff --git a/fs/namei.c b/fs/namei.c index 185d56c..1b9e577 100644 --- a/fs/namei.c +++ b/fs/namei.c @@ -1297,7 +1297,7 @@ int __user_path_lookup_open(const char __user *name, unsigned int lookup_flags, return err; } -static struct dentry *__lookup_hash(struct qstr *name, +struct dentry *__lookup_hash(struct qstr *name, struct dentry *base, struct nameidata *nd) { struct dentry *dentry; diff --git a/include/linux/lockdep.h b/include/linux/lockdep.h index 4c4d236..f5d0642 100644 --- a/include/linux/lockdep.h +++ b/include/linux/lockdep.h @@ -58,7 +58,11 @@ enum lock_usage_bit #define LOCKF_USED_IN_IRQ_READ \ (LOCKF_USED_IN_HARDIRQ_READ | LOCKF_USED_IN_SOFTIRQ_READ) +#ifdef CONFIG_AUFS +#define MAX_LOCKDEP_SUBCLASSES 16UL +#else #define MAX_LOCKDEP_SUBCLASSES 8UL +#endif /* * Lock-classes are keyed via unique addresses, by embedding the diff --git a/include/linux/namei.h b/include/linux/namei.h index 24d88e9..33c7f23 100644 --- a/include/linux/namei.h +++ b/include/linux/namei.h @@ -74,6 +74,7 @@ extern struct file *lookup_instantiate_filp(struct nameidata *nd, struct dentry extern struct file *nameidata_to_filp(struct nameidata *nd, int flags); extern void release_open_intent(struct nameidata *); +struct dentry * __lookup_hash(struct qstr *name, struct dentry * base, struct nameidata *nd); extern struct dentry *lookup_one_len(const char *, struct dentry *, int); extern struct dentry *lookup_one_noperm(const char *, struct dentry *); -- 1.4.4.4 -- To unsubscribe from this list: send the line "unsubscribe linux-fsdevel" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html