aufs: Update to aufs3.4-20120521 and reenable it
svn path=/dists/trunk/linux-2.6/; revision=19083
This commit is contained in:
parent
68ea00a33a
commit
d866f5e288
|
@ -12,6 +12,7 @@ linux-2.6 (3.4.1-1~experimental.1) UNRELEASED; urgency=low
|
|||
|
||||
[ Ben Hutchings ]
|
||||
* DFSG: Remove the new vs6624 driver, which contains non-free firmware
|
||||
* aufs: Update to aufs3.4-20120521
|
||||
|
||||
-- Ben Hutchings <ben@decadent.org.uk> Mon, 21 May 2012 01:37:21 +0100
|
||||
|
||||
|
|
|
@ -1759,7 +1759,7 @@
|
|||
+
|
||||
+-include ${srctree}/${src}/conf_priv.mk
|
||||
--- a/fs/aufs/cpup.c 1970-01-01 01:00:00.000000000 +0100
|
||||
+++ b/fs/aufs/cpup.c 2012-02-19 21:12:26.542426948 +0000
|
||||
+++ b/fs/aufs/cpup.c 2012-06-04 21:49:59.814840078 +0100
|
||||
@@ -0,0 +1,1084 @@
|
||||
+/*
|
||||
+ * Copyright (C) 2005-2012 Junjiro R. Okajima
|
||||
|
@ -1826,7 +1826,7 @@
|
|||
+ * h_inode->i_mutex is not held, but it is harmless since once i_nlink
|
||||
+ * reaches 0, it will never become positive.
|
||||
+ */
|
||||
+ vfsub_set_nlink(inode, h_inode->i_nlink);
|
||||
+ set_nlink(inode, h_inode->i_nlink);
|
||||
+
|
||||
+ /*
|
||||
+ * fewer nlink makes find(1) noisy, but larger nlink doesn't.
|
||||
|
@ -4154,8 +4154,8 @@
|
|||
+ return 0;
|
||||
+}
|
||||
--- a/fs/aufs/debug.h 1970-01-01 01:00:00.000000000 +0100
|
||||
+++ b/fs/aufs/debug.h 2012-01-10 02:15:56.545455955 +0000
|
||||
@@ -0,0 +1,243 @@
|
||||
+++ b/fs/aufs/debug.h 2012-06-04 21:49:59.814840078 +0100
|
||||
@@ -0,0 +1,242 @@
|
||||
+/*
|
||||
+ * Copyright (C) 2005-2012 Junjiro R. Okajima
|
||||
+ *
|
||||
|
@ -4183,7 +4183,6 @@
|
|||
+
|
||||
+#ifdef __KERNEL__
|
||||
+
|
||||
+#include <asm/system.h>
|
||||
+#include <linux/module.h>
|
||||
+#include <linux/kallsyms.h>
|
||||
+#include <linux/sysrq.h>
|
||||
|
@ -6329,7 +6328,7 @@
|
|||
+ return -1;
|
||||
+}
|
||||
--- a/fs/aufs/dir.c 1970-01-01 01:00:00.000000000 +0100
|
||||
+++ b/fs/aufs/dir.c 2012-02-19 21:12:26.566427085 +0000
|
||||
+++ b/fs/aufs/dir.c 2012-06-04 21:49:59.814840078 +0100
|
||||
@@ -0,0 +1,636 @@
|
||||
+/*
|
||||
+ * Copyright (C) 2005-2012 Junjiro R. Okajima
|
||||
|
@ -6367,7 +6366,7 @@
|
|||
+ if (h_dir->i_nlink < 2)
|
||||
+ nlink += 2;
|
||||
+ /* 0 can happen in revaliding */
|
||||
+ vfsub_set_nlink(dir, nlink);
|
||||
+ set_nlink(dir, nlink);
|
||||
+}
|
||||
+
|
||||
+void au_sub_nlink(struct inode *dir, struct inode *h_dir)
|
||||
|
@ -6380,7 +6379,7 @@
|
|||
+ nlink -= h_dir->i_nlink - 2;
|
||||
+ if (h_dir->i_nlink < 2)
|
||||
+ nlink -= 2;
|
||||
+ /* no vfsub version. nlink == 0 means the branch-fs is broken */
|
||||
+ /* nlink == 0 means the branch-fs is broken */
|
||||
+ set_nlink(dir, nlink);
|
||||
+}
|
||||
+
|
||||
|
@ -7567,7 +7566,7 @@
|
|||
+#endif /* __KERNEL__ */
|
||||
+#endif /* __AUFS_DYNOP_H__ */
|
||||
--- a/fs/aufs/export.c 1970-01-01 01:00:00.000000000 +0100
|
||||
+++ b/fs/aufs/export.c 2012-02-19 21:12:26.566427085 +0000
|
||||
+++ b/fs/aufs/export.c 2012-06-04 21:49:59.850840259 +0100
|
||||
@@ -0,0 +1,803 @@
|
||||
+/*
|
||||
+ * Copyright (C) 2005-2012 Junjiro R. Okajima
|
||||
|
@ -9406,7 +9405,7 @@
|
|||
+ return ret;
|
||||
+}
|
||||
--- a/fs/aufs/file.c 1970-01-01 01:00:00.000000000 +0100
|
||||
+++ b/fs/aufs/file.c 2012-02-19 21:12:26.570427095 +0000
|
||||
+++ b/fs/aufs/file.c 2012-06-04 21:49:59.854840268 +0100
|
||||
@@ -0,0 +1,676 @@
|
||||
+/*
|
||||
+ * Copyright (C) 2005-2012 Junjiro R. Okajima
|
||||
|
@ -12082,8 +12081,8 @@
|
|||
+ au_hn_destroy_cache();
|
||||
+}
|
||||
--- a/fs/aufs/i_op.c 1970-01-01 01:00:00.000000000 +0100
|
||||
+++ b/fs/aufs/i_op.c 2012-02-19 21:12:26.570427095 +0000
|
||||
@@ -0,0 +1,992 @@
|
||||
+++ b/fs/aufs/i_op.c 2012-06-04 21:49:59.854840268 +0100
|
||||
@@ -0,0 +1,993 @@
|
||||
+/*
|
||||
+ * Copyright (C) 2005-2012 Junjiro R. Okajima
|
||||
+ *
|
||||
|
@ -12108,6 +12107,7 @@
|
|||
+
|
||||
+#include <linux/device_cgroup.h>
|
||||
+#include <linux/fs_stack.h>
|
||||
+#include <linux/mm.h>
|
||||
+#include <linux/namei.h>
|
||||
+#include <linux/security.h>
|
||||
+#include "aufs.h"
|
||||
|
@ -12850,7 +12850,7 @@
|
|||
+ n -= nlink;
|
||||
+ n += st->nlink;
|
||||
+ /* 0 can happen */
|
||||
+ vfsub_set_nlink(inode, n);
|
||||
+ set_nlink(inode, n);
|
||||
+ }
|
||||
+
|
||||
+ spin_lock(&inode->i_lock);
|
||||
|
@ -13077,7 +13077,7 @@
|
|||
+ .truncate_range = aufs_truncate_range
|
||||
+};
|
||||
--- a/fs/aufs/i_op_add.c 1970-01-01 01:00:00.000000000 +0100
|
||||
+++ b/fs/aufs/i_op_add.c 2012-03-11 05:01:22.570973560 +0000
|
||||
+++ b/fs/aufs/i_op_add.c 2012-06-04 21:49:59.854840268 +0100
|
||||
@@ -0,0 +1,712 @@
|
||||
+/*
|
||||
+ * Copyright (C) 2005-2012 Junjiro R. Okajima
|
||||
|
@ -16043,7 +16043,7 @@
|
|||
+ return au_test_h_perm(h_inode, mask);
|
||||
+}
|
||||
--- a/fs/aufs/inode.h 1970-01-01 01:00:00.000000000 +0100
|
||||
+++ b/fs/aufs/inode.h 2012-03-11 05:01:22.570973560 +0000
|
||||
+++ b/fs/aufs/inode.h 2012-06-04 21:49:59.854840268 +0100
|
||||
@@ -0,0 +1,560 @@
|
||||
+/*
|
||||
+ * Copyright (C) 2005-2012 Junjiro R. Okajima
|
||||
|
@ -20000,8 +20000,8 @@
|
|||
+ return err;
|
||||
+}
|
||||
--- a/fs/aufs/rdu.c 1970-01-01 01:00:00.000000000 +0100
|
||||
+++ b/fs/aufs/rdu.c 2012-01-10 02:15:56.561456041 +0000
|
||||
@@ -0,0 +1,383 @@
|
||||
+++ b/fs/aufs/rdu.c 2012-06-04 21:49:59.854840268 +0100
|
||||
@@ -0,0 +1,384 @@
|
||||
+/*
|
||||
+ * Copyright (C) 2005-2012 Junjiro R. Okajima
|
||||
+ *
|
||||
|
@ -20099,6 +20099,7 @@
|
|||
+ loff_t offset;
|
||||
+ struct au_rdu_cookie *cookie = &arg->rdu->cookie;
|
||||
+
|
||||
+ /* we don't have to care (FMODE_32BITHASH | FMODE_64BITHASH) for ext4 */
|
||||
+ offset = vfsub_llseek(h_file, cookie->h_pos, SEEK_SET);
|
||||
+ err = offset;
|
||||
+ if (unlikely(offset != cookie->h_pos))
|
||||
|
@ -20988,8 +20989,8 @@
|
|||
+#endif /* __KERNEL__ */
|
||||
+#endif /* __AUFS_SPL_H__ */
|
||||
--- a/fs/aufs/super.c 1970-01-01 01:00:00.000000000 +0100
|
||||
+++ b/fs/aufs/super.c 2012-02-19 21:12:26.570427095 +0000
|
||||
@@ -0,0 +1,936 @@
|
||||
+++ b/fs/aufs/super.c 2012-06-04 21:49:59.854840268 +0100
|
||||
@@ -0,0 +1,962 @@
|
||||
+/*
|
||||
+ * Copyright (C) 2005-2012 Junjiro R. Okajima
|
||||
+ *
|
||||
|
@ -21295,7 +21296,18 @@
|
|||
+
|
||||
+ old = a;
|
||||
+ a += b;
|
||||
+ if (old < a)
|
||||
+ if (old <= a)
|
||||
+ return a;
|
||||
+ return ULLONG_MAX;
|
||||
+}
|
||||
+
|
||||
+static u64 au_mul_till_max(u64 a, long mul)
|
||||
+{
|
||||
+ u64 old;
|
||||
+
|
||||
+ old = a;
|
||||
+ a *= mul;
|
||||
+ if (old <= a)
|
||||
+ return a;
|
||||
+ return ULLONG_MAX;
|
||||
+}
|
||||
|
@ -21303,25 +21315,26 @@
|
|||
+static int au_statfs_sum(struct super_block *sb, struct kstatfs *buf)
|
||||
+{
|
||||
+ int err;
|
||||
+ long bsize, factor;
|
||||
+ u64 blocks, bfree, bavail, files, ffree;
|
||||
+ aufs_bindex_t bend, bindex, i;
|
||||
+ unsigned char shared;
|
||||
+ struct path h_path;
|
||||
+ struct super_block *h_sb;
|
||||
+
|
||||
+ err = 0;
|
||||
+ bsize = LONG_MAX;
|
||||
+ files = 0;
|
||||
+ ffree = 0;
|
||||
+ blocks = 0;
|
||||
+ bfree = 0;
|
||||
+ bavail = 0;
|
||||
+ files = 0;
|
||||
+ ffree = 0;
|
||||
+
|
||||
+ err = 0;
|
||||
+ bend = au_sbend(sb);
|
||||
+ for (bindex = bend; bindex >= 0; bindex--) {
|
||||
+ for (bindex = 0; bindex <= bend; bindex++) {
|
||||
+ h_path.mnt = au_sbr_mnt(sb, bindex);
|
||||
+ h_sb = h_path.mnt->mnt_sb;
|
||||
+ shared = 0;
|
||||
+ for (i = bindex + 1; !shared && i <= bend; i++)
|
||||
+ for (i = 0; !shared && i < bindex; i++)
|
||||
+ shared = (au_sbr_sb(sb, i) == h_sb);
|
||||
+ if (shared)
|
||||
+ continue;
|
||||
|
@ -21332,18 +21345,36 @@
|
|||
+ if (unlikely(err))
|
||||
+ goto out;
|
||||
+
|
||||
+ blocks = au_add_till_max(blocks, buf->f_blocks);
|
||||
+ bfree = au_add_till_max(bfree, buf->f_bfree);
|
||||
+ bavail = au_add_till_max(bavail, buf->f_bavail);
|
||||
+ if (bsize > buf->f_bsize) {
|
||||
+ /*
|
||||
+ * we will reduce bsize, so we have to expand blocks
|
||||
+ * etc. to match them again
|
||||
+ */
|
||||
+ factor = (bsize / buf->f_bsize);
|
||||
+ blocks = au_mul_till_max(blocks, factor);
|
||||
+ bfree = au_mul_till_max(bfree, factor);
|
||||
+ bavail = au_mul_till_max(bavail, factor);
|
||||
+ bsize = buf->f_bsize;
|
||||
+ }
|
||||
+
|
||||
+ factor = (buf->f_bsize / bsize);
|
||||
+ blocks = au_add_till_max(blocks,
|
||||
+ au_mul_till_max(buf->f_blocks, factor));
|
||||
+ bfree = au_add_till_max(bfree,
|
||||
+ au_mul_till_max(buf->f_bfree, factor));
|
||||
+ bavail = au_add_till_max(bavail,
|
||||
+ au_mul_till_max(buf->f_bavail, factor));
|
||||
+ files = au_add_till_max(files, buf->f_files);
|
||||
+ ffree = au_add_till_max(ffree, buf->f_ffree);
|
||||
+ }
|
||||
+
|
||||
+ buf->f_bsize = bsize;
|
||||
+ buf->f_blocks = blocks;
|
||||
+ buf->f_bfree = bfree;
|
||||
+ buf->f_bavail = bavail;
|
||||
+ buf->f_files = files;
|
||||
+ buf->f_ffree = ffree;
|
||||
+ buf->f_frsize = 0;
|
||||
+
|
||||
+out:
|
||||
+ return err;
|
||||
|
@ -21765,12 +21796,12 @@
|
|||
+ set_nlink(inode, 2);
|
||||
+ unlock_new_inode(inode);
|
||||
+
|
||||
+ root = d_alloc_root(inode);
|
||||
+ root = d_make_root(inode);
|
||||
+ if (unlikely(!root))
|
||||
+ goto out_iput;
|
||||
+ goto out;
|
||||
+ err = PTR_ERR(root);
|
||||
+ if (IS_ERR(root))
|
||||
+ goto out_iput;
|
||||
+ goto out;
|
||||
+
|
||||
+ err = au_di_init(root);
|
||||
+ if (!err) {
|
||||
|
@ -21778,13 +21809,9 @@
|
|||
+ return 0; /* success */
|
||||
+ }
|
||||
+ dput(root);
|
||||
+ goto out; /* do not iput */
|
||||
+
|
||||
+out_iput:
|
||||
+ iget_failed(inode);
|
||||
+out:
|
||||
+ return err;
|
||||
+
|
||||
+}
|
||||
+
|
||||
+static int aufs_fill_super(struct super_block *sb, void *raw_data,
|
||||
|
@ -23990,7 +24017,7 @@
|
|||
+ return 0;
|
||||
+}
|
||||
--- a/fs/aufs/vfsub.c 1970-01-01 01:00:00.000000000 +0100
|
||||
+++ b/fs/aufs/vfsub.c 2012-03-11 05:01:22.570973560 +0000
|
||||
+++ b/fs/aufs/vfsub.c 2012-06-04 21:49:59.854840268 +0100
|
||||
@@ -0,0 +1,832 @@
|
||||
+/*
|
||||
+ * Copyright (C) 2005-2012 Junjiro R. Okajima
|
||||
|
@ -24825,8 +24852,8 @@
|
|||
+ return err;
|
||||
+}
|
||||
--- a/fs/aufs/vfsub.h 1970-01-01 01:00:00.000000000 +0100
|
||||
+++ b/fs/aufs/vfsub.h 2012-02-19 21:12:26.574427108 +0000
|
||||
@@ -0,0 +1,240 @@
|
||||
+++ b/fs/aufs/vfsub.h 2012-06-04 21:49:59.858840280 +0100
|
||||
@@ -0,0 +1,232 @@
|
||||
+/*
|
||||
+ * Copyright (C) 2005-2012 Junjiro R. Okajima
|
||||
+ *
|
||||
|
@ -24929,14 +24956,6 @@
|
|||
+ clear_nlink(inode);
|
||||
+}
|
||||
+
|
||||
+static inline void vfsub_set_nlink(struct inode *inode, unsigned int nlink)
|
||||
+{
|
||||
+ if (nlink)
|
||||
+ set_nlink(inode, nlink);
|
||||
+ else
|
||||
+ clear_nlink(inode);
|
||||
+}
|
||||
+
|
||||
+/* ---------------------------------------------------------------------- */
|
||||
+
|
||||
+int vfsub_update_h_iattr(struct path *h_path, int *did);
|
||||
|
@ -25004,7 +25023,7 @@
|
|||
+ .dentry = h_dentry,
|
||||
+ .mnt = h_mnt
|
||||
+ };
|
||||
+ touch_atime(h_mnt, h_dentry);
|
||||
+ touch_atime(&h_path);
|
||||
+ vfsub_update_h_iattr(&h_path, /*did*/NULL); /*ignore*/
|
||||
+}
|
||||
+
|
||||
|
@ -28493,7 +28512,7 @@
|
|||
+ return err;
|
||||
+}
|
||||
--- a/include/linux/aufs_type.h 1970-01-01 01:00:00.000000000 +0100
|
||||
+++ b/include/linux/aufs_type.h 2012-03-11 05:01:22.570973560 +0000
|
||||
+++ b/include/linux/aufs_type.h 2012-06-04 21:49:59.858840280 +0100
|
||||
@@ -0,0 +1,233 @@
|
||||
+/*
|
||||
+ * Copyright (C) 2005-2012 Junjiro R. Okajima
|
||||
|
@ -28536,7 +28555,7 @@
|
|||
+
|
||||
+#include <linux/limits.h>
|
||||
+
|
||||
+#define AUFS_VERSION "3.x-rcN-20120312"
|
||||
+#define AUFS_VERSION "3.4-20120521"
|
||||
+
|
||||
+/* todo? move this to linux-2.6.19/include/magic.h */
|
||||
+#define AUFS_SUPER_MAGIC ('a' << 24 | 'u' << 16 | 'f' << 8 | 's')
|
||||
|
|
|
@ -1,10 +1,10 @@
|
|||
aufs3.x-rcN base patch
|
||||
aufs3.4 base patch
|
||||
|
||||
diff --git a/fs/namei.c b/fs/namei.c
|
||||
index e2ba628..fde8ea2 100644
|
||||
index c427919..7ff959b 100644
|
||||
--- a/fs/namei.c
|
||||
+++ b/fs/namei.c
|
||||
@@ -1781,7 +1781,7 @@ static struct dentry *__lookup_hash(struct qstr *name,
|
||||
@@ -1831,7 +1831,7 @@ int vfs_path_lookup(struct dentry *dentry, struct vfsmount *mnt,
|
||||
* needs parent already locked. Doesn't follow mounts.
|
||||
* SMP-safe.
|
||||
*/
|
||||
|
@ -14,7 +14,7 @@ index e2ba628..fde8ea2 100644
|
|||
return __lookup_hash(&nd->last, nd->path.dentry, nd);
|
||||
}
|
||||
diff --git a/fs/splice.c b/fs/splice.c
|
||||
index 1ec0493..c599f73 100644
|
||||
index f847684..f871233 100644
|
||||
--- a/fs/splice.c
|
||||
+++ b/fs/splice.c
|
||||
@@ -1084,8 +1084,8 @@ EXPORT_SYMBOL(generic_splice_sendpage);
|
||||
|
|
|
@ -1,10 +1,10 @@
|
|||
aufs3.x-rcN kbuild patch
|
||||
aufs3.4 kbuild patch
|
||||
|
||||
diff --git a/fs/Kconfig b/fs/Kconfig
|
||||
index d621f02..9b9694c 100644
|
||||
index f95ae3a..6d8a9a5 100644
|
||||
--- a/fs/Kconfig
|
||||
+++ b/fs/Kconfig
|
||||
@@ -215,6 +215,7 @@ source "fs/pstore/Kconfig"
|
||||
@@ -220,6 +220,7 @@ source "fs/pstore/Kconfig"
|
||||
source "fs/sysv/Kconfig"
|
||||
source "fs/ufs/Kconfig"
|
||||
source "fs/exofs/Kconfig"
|
||||
|
@ -13,19 +13,19 @@ index d621f02..9b9694c 100644
|
|||
endif # MISC_FILESYSTEMS
|
||||
|
||||
diff --git a/fs/Makefile b/fs/Makefile
|
||||
index 93804d4..cf3dcb9 100644
|
||||
index 2fb9779..abefac5 100644
|
||||
--- a/fs/Makefile
|
||||
+++ b/fs/Makefile
|
||||
@@ -124,3 +124,4 @@ obj-$(CONFIG_GFS2_FS) += gfs2/
|
||||
@@ -125,3 +125,4 @@ obj-$(CONFIG_GFS2_FS) += gfs2/
|
||||
obj-y += exofs/ # Multiple modules
|
||||
obj-$(CONFIG_CEPH_FS) += ceph/
|
||||
obj-$(CONFIG_PSTORE) += pstore/
|
||||
+obj-$(CONFIG_AUFS_FS) += aufs/
|
||||
diff --git a/include/linux/Kbuild b/include/linux/Kbuild
|
||||
index c94e717..fccb9df 100644
|
||||
index 3c9b616..8704efa 100644
|
||||
--- a/include/linux/Kbuild
|
||||
+++ b/include/linux/Kbuild
|
||||
@@ -65,6 +65,7 @@ header-y += atmppp.h
|
||||
@@ -66,6 +66,7 @@ header-y += atmppp.h
|
||||
header-y += atmsap.h
|
||||
header-y += atmsvc.h
|
||||
header-y += audit.h
|
||||
|
|
|
@ -1,10 +1,10 @@
|
|||
aufs3.x-rcN standalone patch
|
||||
aufs3.4 standalone patch
|
||||
|
||||
diff --git a/fs/file_table.c b/fs/file_table.c
|
||||
index 20002e3..6d792ad 100644
|
||||
index 70f2a0f..146a3d7 100644
|
||||
--- a/fs/file_table.c
|
||||
+++ b/fs/file_table.c
|
||||
@@ -443,6 +443,8 @@ void file_sb_list_del(struct file *file)
|
||||
@@ -442,6 +442,8 @@ void file_sb_list_del(struct file *file)
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -14,10 +14,10 @@ index 20002e3..6d792ad 100644
|
|||
|
||||
/*
|
||||
diff --git a/fs/inode.c b/fs/inode.c
|
||||
index d3ebdbe..6db6251 100644
|
||||
index 9f4f5fe..bb0f3ba 100644
|
||||
--- a/fs/inode.c
|
||||
+++ b/fs/inode.c
|
||||
@@ -66,6 +66,7 @@ static struct hlist_head *inode_hashtable __read_mostly;
|
||||
@@ -56,6 +56,7 @@ static struct hlist_head *inode_hashtable __read_mostly;
|
||||
static __cacheline_aligned_in_smp DEFINE_SPINLOCK(inode_hash_lock);
|
||||
|
||||
__cacheline_aligned_in_smp DEFINE_SPINLOCK(inode_sb_list_lock);
|
||||
|
@ -26,10 +26,10 @@ index d3ebdbe..6db6251 100644
|
|||
/*
|
||||
* Empty aops. Can be used for the cases where the user does not
|
||||
diff --git a/fs/namei.c b/fs/namei.c
|
||||
index fde8ea2..62f2302 100644
|
||||
index 7ff959b..b170167 100644
|
||||
--- a/fs/namei.c
|
||||
+++ b/fs/namei.c
|
||||
@@ -1785,6 +1785,7 @@ struct dentry *lookup_hash(struct nameidata *nd)
|
||||
@@ -1835,6 +1835,7 @@ struct dentry *lookup_hash(struct nameidata *nd)
|
||||
{
|
||||
return __lookup_hash(&nd->last, nd->path.dentry, nd);
|
||||
}
|
||||
|
@ -111,7 +111,7 @@ index f104d56..54f36db 100644
|
|||
static int fsnotify_mark_destroy(void *ignored)
|
||||
{
|
||||
diff --git a/fs/open.c b/fs/open.c
|
||||
index 77becc0..f634f02 100644
|
||||
index 5720854..ec59242 100644
|
||||
--- a/fs/open.c
|
||||
+++ b/fs/open.c
|
||||
@@ -60,6 +60,7 @@ int do_truncate(struct dentry *dentry, loff_t length, unsigned int time_attrs,
|
||||
|
@ -123,7 +123,7 @@ index 77becc0..f634f02 100644
|
|||
static long do_sys_truncate(const char __user *pathname, loff_t length)
|
||||
{
|
||||
diff --git a/fs/splice.c b/fs/splice.c
|
||||
index c599f73..00303ba 100644
|
||||
index f871233..70f5481 100644
|
||||
--- a/fs/splice.c
|
||||
+++ b/fs/splice.c
|
||||
@@ -1108,6 +1108,7 @@ long do_splice_from(struct pipe_inode_info *pipe, struct file *out,
|
||||
|
@ -143,16 +143,16 @@ index c599f73..00303ba 100644
|
|||
/**
|
||||
* splice_direct_to_actor - splices data directly between two non-pipes
|
||||
diff --git a/security/commoncap.c b/security/commoncap.c
|
||||
index 7ce191e..19a95be 100644
|
||||
index 71a166a..5d63aac 100644
|
||||
--- a/security/commoncap.c
|
||||
+++ b/security/commoncap.c
|
||||
@@ -965,3 +965,4 @@ int cap_file_mmap(struct file *file, unsigned long reqprot,
|
||||
@@ -972,3 +972,4 @@ int cap_file_mmap(struct file *file, unsigned long reqprot,
|
||||
}
|
||||
return ret;
|
||||
}
|
||||
+EXPORT_SYMBOL_GPL(cap_file_mmap);
|
||||
diff --git a/security/device_cgroup.c b/security/device_cgroup.c
|
||||
index 8b5b5d8..911850c 100644
|
||||
index c43a332..0c37289 100644
|
||||
--- a/security/device_cgroup.c
|
||||
+++ b/security/device_cgroup.c
|
||||
@@ -7,6 +7,7 @@
|
||||
|
@ -163,7 +163,7 @@ index 8b5b5d8..911850c 100644
|
|||
#include <linux/list.h>
|
||||
#include <linux/uaccess.h>
|
||||
#include <linux/seq_file.h>
|
||||
@@ -501,6 +502,7 @@ found:
|
||||
@@ -499,6 +500,7 @@ found:
|
||||
|
||||
return -EPERM;
|
||||
}
|
||||
|
@ -172,10 +172,10 @@ index 8b5b5d8..911850c 100644
|
|||
int devcgroup_inode_mknod(int mode, dev_t dev)
|
||||
{
|
||||
diff --git a/security/security.c b/security/security.c
|
||||
index d754249..1aa6154 100644
|
||||
index bf619ff..60b996a 100644
|
||||
--- a/security/security.c
|
||||
+++ b/security/security.c
|
||||
@@ -392,6 +392,7 @@ int security_path_rmdir(struct path *dir, struct dentry *dentry)
|
||||
@@ -380,6 +380,7 @@ int security_path_rmdir(struct path *dir, struct dentry *dentry)
|
||||
return 0;
|
||||
return security_ops->path_rmdir(dir, dentry);
|
||||
}
|
||||
|
@ -183,7 +183,7 @@ index d754249..1aa6154 100644
|
|||
|
||||
int security_path_unlink(struct path *dir, struct dentry *dentry)
|
||||
{
|
||||
@@ -408,6 +409,7 @@ int security_path_symlink(struct path *dir, struct dentry *dentry,
|
||||
@@ -396,6 +397,7 @@ int security_path_symlink(struct path *dir, struct dentry *dentry,
|
||||
return 0;
|
||||
return security_ops->path_symlink(dir, dentry, old_name);
|
||||
}
|
||||
|
@ -191,7 +191,7 @@ index d754249..1aa6154 100644
|
|||
|
||||
int security_path_link(struct dentry *old_dentry, struct path *new_dir,
|
||||
struct dentry *new_dentry)
|
||||
@@ -416,6 +418,7 @@ int security_path_link(struct dentry *old_dentry, struct path *new_dir,
|
||||
@@ -404,6 +406,7 @@ int security_path_link(struct dentry *old_dentry, struct path *new_dir,
|
||||
return 0;
|
||||
return security_ops->path_link(old_dentry, new_dir, new_dentry);
|
||||
}
|
||||
|
@ -199,7 +199,7 @@ index d754249..1aa6154 100644
|
|||
|
||||
int security_path_rename(struct path *old_dir, struct dentry *old_dentry,
|
||||
struct path *new_dir, struct dentry *new_dentry)
|
||||
@@ -434,6 +437,7 @@ int security_path_truncate(struct path *path)
|
||||
@@ -422,6 +425,7 @@ int security_path_truncate(struct path *path)
|
||||
return 0;
|
||||
return security_ops->path_truncate(path);
|
||||
}
|
||||
|
@ -207,7 +207,7 @@ index d754249..1aa6154 100644
|
|||
|
||||
int security_path_chmod(struct path *path, umode_t mode)
|
||||
{
|
||||
@@ -441,6 +445,7 @@ int security_path_chmod(struct path *path, umode_t mode)
|
||||
@@ -429,6 +433,7 @@ int security_path_chmod(struct path *path, umode_t mode)
|
||||
return 0;
|
||||
return security_ops->path_chmod(path, mode);
|
||||
}
|
||||
|
@ -215,7 +215,7 @@ index d754249..1aa6154 100644
|
|||
|
||||
int security_path_chown(struct path *path, uid_t uid, gid_t gid)
|
||||
{
|
||||
@@ -448,6 +453,7 @@ int security_path_chown(struct path *path, uid_t uid, gid_t gid)
|
||||
@@ -436,6 +441,7 @@ int security_path_chown(struct path *path, uid_t uid, gid_t gid)
|
||||
return 0;
|
||||
return security_ops->path_chown(path, uid, gid);
|
||||
}
|
||||
|
@ -223,7 +223,7 @@ index d754249..1aa6154 100644
|
|||
|
||||
int security_path_chroot(struct path *path)
|
||||
{
|
||||
@@ -524,6 +530,7 @@ int security_inode_readlink(struct dentry *dentry)
|
||||
@@ -512,6 +518,7 @@ int security_inode_readlink(struct dentry *dentry)
|
||||
return 0;
|
||||
return security_ops->inode_readlink(dentry);
|
||||
}
|
||||
|
@ -231,7 +231,7 @@ index d754249..1aa6154 100644
|
|||
|
||||
int security_inode_follow_link(struct dentry *dentry, struct nameidata *nd)
|
||||
{
|
||||
@@ -538,6 +545,7 @@ int security_inode_permission(struct inode *inode, int mask)
|
||||
@@ -526,6 +533,7 @@ int security_inode_permission(struct inode *inode, int mask)
|
||||
return 0;
|
||||
return security_ops->inode_permission(inode, mask);
|
||||
}
|
||||
|
@ -239,7 +239,7 @@ index d754249..1aa6154 100644
|
|||
|
||||
int security_inode_setattr(struct dentry *dentry, struct iattr *attr)
|
||||
{
|
||||
@@ -653,6 +661,7 @@ int security_file_permission(struct file *file, int mask)
|
||||
@@ -641,6 +649,7 @@ int security_file_permission(struct file *file, int mask)
|
||||
|
||||
return fsnotify_perm(file, mask);
|
||||
}
|
||||
|
@ -247,7 +247,7 @@ index d754249..1aa6154 100644
|
|||
|
||||
int security_file_alloc(struct file *file)
|
||||
{
|
||||
@@ -680,6 +689,7 @@ int security_file_mmap(struct file *file, unsigned long reqprot,
|
||||
@@ -668,6 +677,7 @@ int security_file_mmap(struct file *file, unsigned long reqprot,
|
||||
return ret;
|
||||
return ima_file_mmap(file, prot);
|
||||
}
|
||||
|
|
|
@ -8,14 +8,14 @@
|
|||
|
||||
# Patches and source files from aufs3 repository, imported with
|
||||
# debian/patches/features/all/aufs3/gen-patch.
|
||||
# + features/all/aufs3/aufs3-base.patch
|
||||
# + features/all/aufs3/aufs3-standalone.patch
|
||||
# + features/all/aufs3/aufs3-kbuild.patch
|
||||
# + features/all/aufs3/aufs3-add.patch
|
||||
+ features/all/aufs3/aufs3-base.patch
|
||||
+ features/all/aufs3/aufs3-standalone.patch
|
||||
+ features/all/aufs3/aufs3-kbuild.patch
|
||||
+ features/all/aufs3/aufs3-add.patch
|
||||
# mark as staging/crap
|
||||
# + features/all/aufs3/mark-as-staging.patch
|
||||
+ features/all/aufs3/mark-as-staging.patch
|
||||
# fix added exports from security/device_cgroup.c
|
||||
# + features/all/aufs3/aufs3-fix-export-__devcgroup_inode_permission.patch
|
||||
+ features/all/aufs3/aufs3-fix-export-__devcgroup_inode_permission.patch
|
||||
|
||||
+ bugfix/ia64/hardcode-arch-script-output.patch
|
||||
+ bugfix/mips/disable-advansys.patch
|
||||
|
|
Loading…
Reference in New Issue