-aufs3.x-rcN kbuild patch
+aufs3.8 kbuild patch
diff --git a/fs/Kconfig b/fs/Kconfig
index 780725a..d460c05 100644
obj-$(CONFIG_CEPH_FS) += ceph/
obj-$(CONFIG_PSTORE) += pstore/
+obj-$(CONFIG_AUFS_FS) += aufs/
-aufs3.x-rcN base patch
+aufs3.8 base patch
diff --git a/fs/file_table.c b/fs/file_table.c
index de9e965..e73287a 100644
+ struct pipe_inode_info *pipe, size_t len,
+ unsigned int flags);
#endif
-aufs3.x-rcN standalone patch
+aufs3.8 standalone patch
diff --git a/fs/file_table.c b/fs/file_table.c
index e73287a..b33aebe 100644
+Otherwise from /new.
diff -urN /usr/share/empty/Documentation/filesystems/aufs/README linux/Documentation/filesystems/aufs/README
--- /usr/share/empty/Documentation/filesystems/aufs/README 1970-01-01 01:00:00.000000000 +0100
-+++ linux/Documentation/filesystems/aufs/README 2013-02-19 08:40:03.943559493 +0100
++++ linux/Documentation/filesystems/aufs/README 2013-03-14 20:07:40.574775374 +0100
@@ -0,0 +1,333 @@
+
+Aufs3 -- advanced multi layered unification filesystem version 3.x
+#endif /* __AUFS_H__ */
diff -urN /usr/share/empty/fs/aufs/branch.c linux/fs/aufs/branch.c
--- /usr/share/empty/fs/aufs/branch.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux/fs/aufs/branch.c 2013-02-19 08:40:03.946892891 +0100
++++ linux/fs/aufs/branch.c 2013-03-14 20:07:41.038119650 +0100
@@ -0,0 +1,1172 @@
+/*
+ * Copyright (C) 2005-2013 Junjiro R. Okajima
+-include ${srctree}/${src}/conf_priv.mk
diff -urN /usr/share/empty/fs/aufs/cpup.c linux/fs/aufs/cpup.c
--- /usr/share/empty/fs/aufs/cpup.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux/fs/aufs/cpup.c 2013-02-19 08:40:03.946892891 +0100
++++ linux/fs/aufs/cpup.c 2013-03-14 20:07:41.038119650 +0100
@@ -0,0 +1,1085 @@
+/*
+ * Copyright (C) 2005-2013 Junjiro R. Okajima
+#endif /* __AUFS_CPUP_H__ */
diff -urN /usr/share/empty/fs/aufs/dbgaufs.c linux/fs/aufs/dbgaufs.c
--- /usr/share/empty/fs/aufs/dbgaufs.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux/fs/aufs/dbgaufs.c 2013-02-19 08:40:03.946892891 +0100
++++ linux/fs/aufs/dbgaufs.c 2013-03-14 20:07:41.038119650 +0100
@@ -0,0 +1,334 @@
+/*
+ * Copyright (C) 2005-2013 Junjiro R. Okajima
+#endif /* __AUFS_DCSUB_H__ */
diff -urN /usr/share/empty/fs/aufs/debug.c linux/fs/aufs/debug.c
--- /usr/share/empty/fs/aufs/debug.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux/fs/aufs/debug.c 2013-02-19 08:40:03.946892891 +0100
++++ linux/fs/aufs/debug.c 2013-03-14 20:07:41.038119650 +0100
@@ -0,0 +1,490 @@
+/*
+ * Copyright (C) 2005-2013 Junjiro R. Okajima
+#endif /* __AUFS_DEBUG_H__ */
diff -urN /usr/share/empty/fs/aufs/dentry.c linux/fs/aufs/dentry.c
--- /usr/share/empty/fs/aufs/dentry.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux/fs/aufs/dentry.c 2013-02-19 08:40:03.946892891 +0100
++++ linux/fs/aufs/dentry.c 2013-03-14 20:07:41.038119650 +0100
@@ -0,0 +1,1060 @@
+/*
+ * Copyright (C) 2005-2013 Junjiro R. Okajima
+}
diff -urN /usr/share/empty/fs/aufs/dir.c linux/fs/aufs/dir.c
--- /usr/share/empty/fs/aufs/dir.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux/fs/aufs/dir.c 2013-02-19 08:40:03.946892891 +0100
++++ linux/fs/aufs/dir.c 2013-03-14 20:07:41.038119650 +0100
@@ -0,0 +1,633 @@
+/*
+ * Copyright (C) 2005-2013 Junjiro R. Okajima
+#endif /* __AUFS_DYNOP_H__ */
diff -urN /usr/share/empty/fs/aufs/export.c linux/fs/aufs/export.c
--- /usr/share/empty/fs/aufs/export.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux/fs/aufs/export.c 2013-02-19 08:40:03.946892891 +0100
-@@ -0,0 +1,812 @@
++++ linux/fs/aufs/export.c 2013-03-14 20:07:41.038119650 +0100
+@@ -0,0 +1,827 @@
+/*
+ * Copyright (C) 2005-2013 Junjiro R. Okajima
+ *
+ return !!(dentry->d_flags & DCACHE_DISCONNECTED);
+}
+
++int au_test_nfsd(void)
++{
++ int ret;
++ struct task_struct *tsk = current;
++ char comm[sizeof(tsk->comm)];
++
++ ret = 0;
++ if (tsk->flags & PF_KTHREAD) {
++ get_task_comm(comm, tsk);
++ ret = !strcmp(comm, "nfsd");
++ }
++
++ return ret;
++}
++
+/* ---------------------------------------------------------------------- */
+/* inode generation external table */
+
+}
diff -urN /usr/share/empty/fs/aufs/file.c linux/fs/aufs/file.c
--- /usr/share/empty/fs/aufs/file.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux/fs/aufs/file.c 2013-02-19 08:40:03.946892891 +0100
++++ linux/fs/aufs/file.c 2013-03-14 20:07:41.041453062 +0100
@@ -0,0 +1,683 @@
+/*
+ * Copyright (C) 2005-2013 Junjiro R. Okajima
+}
diff -urN /usr/share/empty/fs/aufs/f_op.c linux/fs/aufs/f_op.c
--- /usr/share/empty/fs/aufs/f_op.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux/fs/aufs/f_op.c 2013-02-19 08:40:03.946892891 +0100
++++ linux/fs/aufs/f_op.c 2013-03-14 20:07:41.041453062 +0100
@@ -0,0 +1,723 @@
+/*
+ * Copyright (C) 2005-2013 Junjiro R. Okajima
+};
diff -urN /usr/share/empty/fs/aufs/f_op_sp.c linux/fs/aufs/f_op_sp.c
--- /usr/share/empty/fs/aufs/f_op_sp.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux/fs/aufs/f_op_sp.c 2013-02-19 08:40:03.946892891 +0100
++++ linux/fs/aufs/f_op_sp.c 2013-03-14 20:07:41.041453062 +0100
@@ -0,0 +1,295 @@
+/*
+ * Copyright (C) 2005-2013 Junjiro R. Okajima
+}
diff -urN /usr/share/empty/fs/aufs/hnotify.c linux/fs/aufs/hnotify.c
--- /usr/share/empty/fs/aufs/hnotify.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux/fs/aufs/hnotify.c 2013-02-19 08:40:03.946892891 +0100
++++ linux/fs/aufs/hnotify.c 2013-03-14 20:07:41.041453062 +0100
@@ -0,0 +1,713 @@
+/*
+ * Copyright (C) 2005-2013 Junjiro R. Okajima
+}
diff -urN /usr/share/empty/fs/aufs/i_op.c linux/fs/aufs/i_op.c
--- /usr/share/empty/fs/aufs/i_op.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux/fs/aufs/i_op.c 2013-02-19 08:40:03.950226347 +0100
++++ linux/fs/aufs/i_op.c 2013-03-14 20:07:41.041453062 +0100
@@ -0,0 +1,1030 @@
+/*
+ * Copyright (C) 2005-2013 Junjiro R. Okajima
+}
diff -urN /usr/share/empty/fs/aufs/Kconfig linux/fs/aufs/Kconfig
--- /usr/share/empty/fs/aufs/Kconfig 1970-01-01 01:00:00.000000000 +0100
-+++ linux/fs/aufs/Kconfig 2012-08-26 08:39:00.757174634 +0200
++++ linux/fs/aufs/Kconfig 2013-03-14 20:07:41.038119650 +0100
@@ -0,0 +1,203 @@
+config AUFS_FS
+ tristate "Aufs (Advanced multi layered unification filesystem) support"
+endif
diff -urN /usr/share/empty/fs/aufs/loop.c linux/fs/aufs/loop.c
--- /usr/share/empty/fs/aufs/loop.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux/fs/aufs/loop.c 2013-02-19 08:40:03.950226347 +0100
-@@ -0,0 +1,133 @@
++++ linux/fs/aufs/loop.c 2013-03-14 20:07:18.764260309 +0100
+@@ -0,0 +1,135 @@
+/*
+ * Copyright (C) 2005-2013 Junjiro R. Okajima
+ *
+{
+ int ret;
+ struct task_struct *tsk = current;
++ char c, comm[sizeof(tsk->comm)];
+
+ ret = 0;
+ if (tsk->flags & PF_KTHREAD) {
-+ const char c = tsk->comm[4];
++ get_task_comm(comm, tsk);
++ c = comm[4];
+ ret = ('0' <= c && c <= '9'
-+ && !strncmp(tsk->comm, "loop", 4));
++ && !strncmp(comm, "loop", 4));
+ }
+
+ return ret;
+#endif /* __AUFS_SPL_H__ */
diff -urN /usr/share/empty/fs/aufs/super.c linux/fs/aufs/super.c
--- /usr/share/empty/fs/aufs/super.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux/fs/aufs/super.c 2013-02-19 08:40:03.950226347 +0100
++++ linux/fs/aufs/super.c 2013-03-14 20:07:41.221457313 +0100
@@ -0,0 +1,993 @@
+/*
+ * Copyright (C) 2005-2013 Junjiro R. Okajima
+};
diff -urN /usr/share/empty/fs/aufs/super.h linux/fs/aufs/super.h
--- /usr/share/empty/fs/aufs/super.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux/fs/aufs/super.h 2013-02-19 08:40:03.950226347 +0100
-@@ -0,0 +1,546 @@
++++ linux/fs/aufs/super.h 2013-03-14 20:07:18.764260309 +0100
+@@ -0,0 +1,538 @@
+/*
+ * Copyright (C) 2005-2013 Junjiro R. Okajima
+ *
+/* ---------------------------------------------------------------------- */
+
+#ifdef CONFIG_AUFS_EXPORT
++int au_test_nfsd(void);
+void au_export_init(struct super_block *sb);
-+
-+static inline int au_test_nfsd(void)
-+{
-+ struct task_struct *tsk = current;
-+
-+ return (tsk->flags & PF_KTHREAD)
-+ && !strcmp(tsk->comm, "nfsd");
-+}
-+
+void au_xigen_inc(struct inode *inode);
+int au_xigen_new(struct inode *inode);
+int au_xigen_set(struct super_block *sb, struct file *base);
+ return -ESTALE;
+}
+#else
-+AuStubVoid(au_export_init, struct super_block *sb)
+AuStubInt0(au_test_nfsd, void)
++AuStubVoid(au_export_init, struct super_block *sb)
+AuStubVoid(au_xigen_inc, struct inode *inode)
+AuStubInt0(au_xigen_new, struct inode *inode)
+AuStubInt0(au_xigen_set, struct super_block *sb, struct file *base)
+}
diff -urN /usr/share/empty/fs/aufs/sysrq.c linux/fs/aufs/sysrq.c
--- /usr/share/empty/fs/aufs/sysrq.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux/fs/aufs/sysrq.c 2013-02-19 08:40:03.950226347 +0100
++++ linux/fs/aufs/sysrq.c 2013-03-14 20:07:41.221457313 +0100
@@ -0,0 +1,148 @@
+/*
+ * Copyright (C) 2005-2013 Junjiro R. Okajima
+}
diff -urN /usr/share/empty/fs/aufs/vdir.c linux/fs/aufs/vdir.c
--- /usr/share/empty/fs/aufs/vdir.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux/fs/aufs/vdir.c 2013-02-19 08:40:03.950226347 +0100
++++ linux/fs/aufs/vdir.c 2013-03-14 20:07:41.221457313 +0100
@@ -0,0 +1,885 @@
+/*
+ * Copyright (C) 2005-2013 Junjiro R. Okajima
+}
diff -urN /usr/share/empty/fs/aufs/vfsub.c linux/fs/aufs/vfsub.c
--- /usr/share/empty/fs/aufs/vfsub.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux/fs/aufs/vfsub.c 2013-02-19 08:40:03.950226347 +0100
++++ linux/fs/aufs/vfsub.c 2013-03-14 20:07:41.221457313 +0100
@@ -0,0 +1,777 @@
+/*
+ * Copyright (C) 2005-2013 Junjiro R. Okajima
+}
diff -urN /usr/share/empty/fs/aufs/vfsub.h linux/fs/aufs/vfsub.h
--- /usr/share/empty/fs/aufs/vfsub.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux/fs/aufs/vfsub.h 2013-02-19 08:40:03.950226347 +0100
++++ linux/fs/aufs/vfsub.h 2013-03-14 20:07:41.224790724 +0100
@@ -0,0 +1,284 @@
+/*
+ * Copyright (C) 2005-2013 Junjiro R. Okajima
+};
diff -urN /usr/share/empty/fs/aufs/whout.c linux/fs/aufs/whout.c
--- /usr/share/empty/fs/aufs/whout.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux/fs/aufs/whout.c 2013-02-19 08:40:03.953559833 +0100
++++ linux/fs/aufs/whout.c 2013-03-14 20:07:41.224790724 +0100
@@ -0,0 +1,1042 @@
+/*
+ * Copyright (C) 2005-2013 Junjiro R. Okajima
+#endif /* __AUFS_WKQ_H__ */
diff -urN /usr/share/empty/fs/aufs/xino.c linux/fs/aufs/xino.c
--- /usr/share/empty/fs/aufs/xino.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux/fs/aufs/xino.c 2013-02-19 08:40:03.953559833 +0100
++++ linux/fs/aufs/xino.c 2013-03-14 20:07:41.224790724 +0100
@@ -0,0 +1,1265 @@
+/*
+ * Copyright (C) 2005-2013 Junjiro R. Okajima
+#include <uapi/linux/aufs_type.h>
diff -urN /usr/share/empty/include/uapi/linux/aufs_type.h linux/include/uapi/linux/aufs_type.h
--- /usr/share/empty/include/uapi/linux/aufs_type.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux/include/uapi/linux/aufs_type.h 2013-02-19 08:40:03.953559833 +0100
-@@ -0,0 +1,233 @@
++++ linux/include/uapi/linux/aufs_type.h 2013-03-14 20:07:41.224790724 +0100
+@@ -0,0 +1,234 @@
+/*
+ * Copyright (C) 2005-2013 Junjiro R. Okajima
+ *
+#define pr_fmt(fmt) AUFS_NAME " %s:%d: " fmt, __func__, __LINE__
+#include <linux/sched.h>
+#undef pr_fmt
-+#define pr_fmt(fmt) AUFS_NAME " %s:%d:%s[%d]: " fmt, \
-+ __func__, __LINE__, current->comm, current->pid
++#define pr_fmt(fmt) \
++ AUFS_NAME " %s:%d:%.*s[%d]: " fmt, __func__, __LINE__, \
++ (int)sizeof(current->comm), current->comm, current->pid
+#else
+#include <stdint.h>
+#include <sys/types.h>
+
+#include <linux/limits.h>
+
-+#define AUFS_VERSION "3.x-rcN-20130204"
++#define AUFS_VERSION "3.8-20130311"
+
+/* todo? move this to linux-2.6.19/include/magic.h */
+#define AUFS_SUPER_MAGIC ('a' << 24 | 'u' << 16 | 'f' << 8 | 's')