aufs: Update to aufs3.x-rcN-20131223

svn path=/dists/trunk/linux/; revision=20919
This commit is contained in:
Ben Hutchings 2013-12-26 12:22:27 +00:00
parent 2c0db3aff3
commit 049c93d9cc
7 changed files with 600 additions and 590 deletions

2
debian/changelog vendored
View File

@ -4,7 +4,7 @@ linux (3.13~rc4-1~exp1) UNRELEASED; urgency=low
[ Ben Hutchings ]
* [rt] Disable until it is updated for 3.13 or later
* aufs: Disable until it is updated for Linux 3.13
* aufs: Update to aufs3.x-rcN-20131223
[ Aurelien Jarno ]
* [mipsel] Remove r5k-cobalt flavour.

File diff suppressed because it is too large Load Diff

View File

@ -1,15 +1,15 @@
From: J. R. Okajima <hooanon05@yahoo.co.jp>
Date: Tue Nov 5 13:13:07 2013 +0900
Subject: aufs3.12 base patch
Origin: http://sourceforge.net/p/aufs/aufs3-standalone/ci/4a7364f2f7c6db8bb880d7aefbeb34efc1d66ad4/tree/
Date: Wed Dec 18 12:37:33 2013 +0900
Subject: aufs3.x-rcN base patch
Origin: http://sourceforge.net/p/aufs/aufs3-standalone/ci/7b136a27b021da9010d8b6c101939dd298e46be7/tree/
Bug-Debian: http://bugs.debian.org/541828
Patch headers added by debian/patches/features/all/aufs3/gen-patch
aufs3.12 base patch
aufs3.x-rcN base patch
diff --git a/drivers/block/loop.c b/drivers/block/loop.c
index 40e7155..6e43ab0 100644
index c8dac73..2e229ac 100644
--- a/drivers/block/loop.c
+++ b/drivers/block/loop.c
@@ -691,6 +691,24 @@ static inline int is_loop_device(struct file *file)
@ -37,41 +37,11 @@ index 40e7155..6e43ab0 100644
/* loop sysfs attributes */
static ssize_t loop_attr_show(struct device *dev, char *page,
diff --git a/fs/file_table.c b/fs/file_table.c
index e900ca5..ccd02ee 100644
--- a/fs/file_table.c
+++ b/fs/file_table.c
@@ -36,7 +36,7 @@ struct files_stat_struct files_stat = {
.max_files = NR_FILE
};
-DEFINE_STATIC_LGLOCK(files_lglock);
+DEFINE_LGLOCK(files_lglock);
/* SLAB cache for file structures */
static struct kmem_cache *filp_cachep __read_mostly;
@@ -360,7 +360,7 @@ static inline int file_list_cpu(struct file *file)
}
/* helper for file_sb_list_add to reduce ifdefs */
-static inline void __file_sb_list_add(struct file *file, struct super_block *sb)
+inline void __file_sb_list_add(struct file *file, struct super_block *sb)
{
struct list_head *list;
#ifdef CONFIG_SMP
@@ -373,6 +373,7 @@ static inline void __file_sb_list_add(struct file *file, struct super_block *sb)
#endif
list_add(&file->f_u.fu_list, list);
}
+EXPORT_SYMBOL_GPL(__file_sb_list_add);
/**
* file_sb_list_add - add a file to the sb's file list
diff --git a/fs/inode.c b/fs/inode.c
index b33ba8e..9b24434 100644
index 4bcdad3..bc83168 100644
--- a/fs/inode.c
+++ b/fs/inode.c
@@ -1469,7 +1469,7 @@ static int relatime_need_update(struct vfsmount *mnt, struct inode *inode,
@@ -1497,7 +1497,7 @@ static int relatime_need_update(struct vfsmount *mnt, struct inode *inode,
* This does the actual work of updating an inodes time or version. Must have
* had called mnt_want_write() before calling this.
*/
@ -81,7 +51,7 @@ index b33ba8e..9b24434 100644
if (inode->i_op->update_time)
return inode->i_op->update_time(inode, time, flags);
diff --git a/fs/splice.c b/fs/splice.c
index 3b7ee65..e147583 100644
index 46a08f7..719ca3e 100644
--- a/fs/splice.c
+++ b/fs/splice.c
@@ -1093,8 +1093,8 @@ EXPORT_SYMBOL(generic_splice_sendpage);
@ -109,10 +79,10 @@ index 3b7ee65..e147583 100644
ssize_t (*splice_read)(struct file *, loff_t *,
struct pipe_inode_info *, size_t, unsigned int);
diff --git a/include/linux/fs.h b/include/linux/fs.h
index 3f40547..36b235e 100644
index 121f11f..39bf86d 100644
--- a/include/linux/fs.h
+++ b/include/linux/fs.h
@@ -2594,6 +2594,7 @@ extern int inode_change_ok(const struct inode *, struct iattr *);
@@ -2657,6 +2657,7 @@ extern int inode_change_ok(const struct inode *, struct iattr *);
extern int inode_newsize_ok(const struct inode *, loff_t offset);
extern void setattr_copy(struct inode *inode, const struct iattr *attr);

View File

@ -1,12 +1,12 @@
From: J. R. Okajima <hooanon05@yahoo.co.jp>
Date: Tue Nov 5 13:13:07 2013 +0900
Subject: aufs3.12 kbuild patch
Origin: http://sourceforge.net/p/aufs/aufs3-standalone/ci/4a7364f2f7c6db8bb880d7aefbeb34efc1d66ad4/tree/
Date: Wed Dec 18 12:37:33 2013 +0900
Subject: aufs3.x-rcN kbuild patch
Origin: http://sourceforge.net/p/aufs/aufs3-standalone/ci/7b136a27b021da9010d8b6c101939dd298e46be7/tree/
Bug-Debian: http://bugs.debian.org/541828
Patch headers added by debian/patches/features/all/aufs3/gen-patch
aufs3.12 kbuild patch
aufs3.x-rcN kbuild patch
diff --git a/fs/Kconfig b/fs/Kconfig
index c229f82..397b473 100644
@ -30,7 +30,7 @@ index 4fe6df3..4a57676 100644
obj-$(CONFIG_EFIVAR_FS) += efivarfs/
+obj-$(CONFIG_AUFS_FS) += aufs/
diff --git a/include/uapi/linux/Kbuild b/include/uapi/linux/Kbuild
index 115add2..ce305b3 100644
index 33d2b8f..b55eeb9 100644
--- a/include/uapi/linux/Kbuild
+++ b/include/uapi/linux/Kbuild
@@ -56,6 +56,7 @@ header-y += atmppp.h

View File

@ -1,12 +1,12 @@
From: J. R. Okajima <hooanon05@yahoo.co.jp>
Date: Tue Nov 5 13:13:07 2013 +0900
Subject: aufs3.12 mmap patch
Origin: http://sourceforge.net/p/aufs/aufs3-standalone/ci/4a7364f2f7c6db8bb880d7aefbeb34efc1d66ad4/tree/
Date: Wed Dec 18 12:37:33 2013 +0900
Subject: aufs3.x-rcN mmap patch
Origin: http://sourceforge.net/p/aufs/aufs3-standalone/ci/7b136a27b021da9010d8b6c101939dd298e46be7/tree/
Bug-Debian: http://bugs.debian.org/541828
Patch headers added by debian/patches/features/all/aufs3/gen-patch
aufs3.12 mmap patch
aufs3.x-rcN mmap patch
diff --git a/fs/buffer.c b/fs/buffer.c
index 6024877..95bbf13 100644
@ -22,7 +22,7 @@ index 6024877..95bbf13 100644
ret = __block_page_mkwrite(vma, vmf, get_block);
sb_end_pagefault(sb);
diff --git a/fs/proc/nommu.c b/fs/proc/nommu.c
index ccfd99b..bca7789 100644
index 5f9bc8a..9ea6c3a 100644
--- a/fs/proc/nommu.c
+++ b/fs/proc/nommu.c
@@ -45,7 +45,9 @@ static int nommu_region_show(struct seq_file *m, struct vm_region *region)
@ -37,10 +37,10 @@ index ccfd99b..bca7789 100644
ino = inode->i_ino;
}
diff --git a/fs/proc/task_mmu.c b/fs/proc/task_mmu.c
index 390bdab..ad05546 100644
index fb52b54..1aca72e 100644
--- a/fs/proc/task_mmu.c
+++ b/fs/proc/task_mmu.c
@@ -272,7 +272,9 @@ show_map_vma(struct seq_file *m, struct vm_area_struct *vma, int is_pid)
@@ -264,7 +264,9 @@ show_map_vma(struct seq_file *m, struct vm_area_struct *vma, int is_pid)
const char *name = NULL;
if (file) {
@ -51,7 +51,7 @@ index 390bdab..ad05546 100644
dev = inode->i_sb->s_dev;
ino = inode->i_ino;
pgoff = ((loff_t)vma->vm_pgoff) << PAGE_SHIFT;
@@ -1412,6 +1414,7 @@ static int show_numa_map(struct seq_file *m, void *v, int is_pid)
@@ -1407,6 +1409,7 @@ static int show_numa_map(struct seq_file *m, void *v, int is_pid)
seq_printf(m, "%08lx %s", vma->vm_start, buffer);
if (file) {
@ -60,10 +60,10 @@ index 390bdab..ad05546 100644
seq_path(m, &file->f_path, "\n\t= ");
} else if (vma->vm_start <= mm->brk && vma->vm_end >= mm->start_brk) {
diff --git a/fs/proc/task_nommu.c b/fs/proc/task_nommu.c
index 56123a6..d19737f 100644
index 678455d..ad0ce45 100644
--- a/fs/proc/task_nommu.c
+++ b/fs/proc/task_nommu.c
@@ -149,7 +149,9 @@ static int nommu_vma_show(struct seq_file *m, struct vm_area_struct *vma,
@@ -141,7 +141,9 @@ static int nommu_vma_show(struct seq_file *m, struct vm_area_struct *vma,
file = vma->vm_file;
if (file) {
@ -75,7 +75,7 @@ index 56123a6..d19737f 100644
ino = inode->i_ino;
pgoff = (loff_t)vma->vm_pgoff << PAGE_SHIFT;
diff --git a/include/linux/mm.h b/include/linux/mm.h
index 8b6e55e..1359c80 100644
index 1cedd00..a31519b 100644
--- a/include/linux/mm.h
+++ b/include/linux/mm.h
@@ -17,6 +17,9 @@
@ -88,7 +88,7 @@ index 8b6e55e..1359c80 100644
struct mempolicy;
struct anon_vma;
@@ -1017,6 +1020,87 @@ static inline int fixup_user_fault(struct task_struct *tsk,
@@ -1101,6 +1104,87 @@ static inline int fixup_user_fault(struct task_struct *tsk,
}
#endif
@ -177,10 +177,10 @@ index 8b6e55e..1359c80 100644
extern int access_remote_vm(struct mm_struct *mm, unsigned long addr,
void *buf, int len, int write);
diff --git a/include/linux/mm_types.h b/include/linux/mm_types.h
index d9851ee..4bde7bf 100644
index bd29941..b5c6151 100644
--- a/include/linux/mm_types.h
+++ b/include/linux/mm_types.h
@@ -213,6 +213,7 @@ struct vm_region {
@@ -230,6 +230,7 @@ struct vm_region {
unsigned long vm_top; /* region allocated to here */
unsigned long vm_pgoff; /* the offset in vm_file corresponding to vm_start */
struct file *vm_file; /* the backing file or NULL */
@ -188,7 +188,7 @@ index d9851ee..4bde7bf 100644
int vm_usage; /* region usage count (access under nommu_region_sem) */
bool vm_icache_flushed : 1; /* true if the icache has been flushed for
@@ -281,6 +282,7 @@ struct vm_area_struct {
@@ -298,6 +299,7 @@ struct vm_area_struct {
unsigned long vm_pgoff; /* Offset (within vm_file) in PAGE_SIZE
units, *not* PAGE_CACHE_SIZE */
struct file * vm_file; /* File we map to (can be NULL). */
@ -197,7 +197,7 @@ index d9851ee..4bde7bf 100644
#ifndef CONFIG_MMU
diff --git a/kernel/fork.c b/kernel/fork.c
index 086fe73..003e30c 100644
index 728d5be..4e4344e 100644
--- a/kernel/fork.c
+++ b/kernel/fork.c
@@ -412,7 +412,7 @@ static int dup_mmap(struct mm_struct *mm, struct mm_struct *oldmm)
@ -210,7 +210,7 @@ index 086fe73..003e30c 100644
atomic_dec(&inode->i_writecount);
mutex_lock(&mapping->i_mmap_mutex);
diff --git a/mm/filemap.c b/mm/filemap.c
index ae4846f..3f890ee 100644
index b7749a9..a6693ca 100644
--- a/mm/filemap.c
+++ b/mm/filemap.c
@@ -1735,7 +1735,7 @@ int filemap_page_mkwrite(struct vm_area_struct *vma, struct vm_fault *vmf)
@ -261,10 +261,10 @@ index 539eeb9..5e700b1 100644
return error;
}
diff --git a/mm/memory.c b/mm/memory.c
index d176154..49cafa9 100644
index 5d9025f..3e3c5d5 100644
--- a/mm/memory.c
+++ b/mm/memory.c
@@ -2745,7 +2745,7 @@ reuse:
@@ -2752,7 +2752,7 @@ reuse:
set_page_dirty_balance(dirty_page, page_mkwrite);
/* file_update_time outside page_lock */
if (vma->vm_file)
@ -273,7 +273,7 @@ index d176154..49cafa9 100644
}
put_page(dirty_page);
if (page_mkwrite) {
@@ -3456,7 +3456,7 @@ static int __do_fault(struct mm_struct *mm, struct vm_area_struct *vma,
@@ -3463,7 +3463,7 @@ static int __do_fault(struct mm_struct *mm, struct vm_area_struct *vma,
/* file_update_time outside page_lock */
if (vma->vm_file && !page_mkwrite)
@ -283,10 +283,10 @@ index d176154..49cafa9 100644
unlock_page(vmf.page);
if (anon)
diff --git a/mm/mmap.c b/mm/mmap.c
index 9d54851..64ae6ce 100644
index 834b2d7..91f5699 100644
--- a/mm/mmap.c
+++ b/mm/mmap.c
@@ -250,7 +250,7 @@ static struct vm_area_struct *remove_vma(struct vm_area_struct *vma)
@@ -248,7 +248,7 @@ static struct vm_area_struct *remove_vma(struct vm_area_struct *vma)
if (vma->vm_ops && vma->vm_ops->close)
vma->vm_ops->close(vma);
if (vma->vm_file)
@ -295,7 +295,7 @@ index 9d54851..64ae6ce 100644
mpol_put(vma_policy(vma));
kmem_cache_free(vm_area_cachep, vma);
return next;
@@ -860,7 +860,7 @@ again: remove_next = 1 + (end > next->vm_end);
@@ -858,7 +858,7 @@ again: remove_next = 1 + (end > next->vm_end);
if (remove_next) {
if (file) {
uprobe_munmap(next, next->vm_start, next->vm_end);
@ -304,7 +304,7 @@ index 9d54851..64ae6ce 100644
}
if (next->anon_vma)
anon_vma_merge(vma, next);
@@ -1622,8 +1622,8 @@ out:
@@ -1620,8 +1620,8 @@ out:
unmap_and_free_vma:
if (vm_flags & VM_DENYWRITE)
allow_write_access(file);
@ -314,7 +314,7 @@ index 9d54851..64ae6ce 100644
/* Undo any partial mapping done by a device driver. */
unmap_region(mm, vma, prev, vma->vm_start, vma->vm_end);
@@ -2412,7 +2412,7 @@ static int __split_vma(struct mm_struct * mm, struct vm_area_struct * vma,
@@ -2410,7 +2410,7 @@ static int __split_vma(struct mm_struct * mm, struct vm_area_struct * vma,
goto out_free_mpol;
if (new->vm_file)
@ -323,7 +323,7 @@ index 9d54851..64ae6ce 100644
if (new->vm_ops && new->vm_ops->open)
new->vm_ops->open(new);
@@ -2431,7 +2431,7 @@ static int __split_vma(struct mm_struct * mm, struct vm_area_struct * vma,
@@ -2429,7 +2429,7 @@ static int __split_vma(struct mm_struct * mm, struct vm_area_struct * vma,
if (new->vm_ops && new->vm_ops->close)
new->vm_ops->close(new);
if (new->vm_file)
@ -332,7 +332,7 @@ index 9d54851..64ae6ce 100644
unlink_anon_vmas(new);
out_free_mpol:
mpol_put(vma_policy(new));
@@ -2828,7 +2828,7 @@ struct vm_area_struct *copy_vma(struct vm_area_struct **vmap,
@@ -2827,7 +2827,7 @@ struct vm_area_struct *copy_vma(struct vm_area_struct **vmap,
if (anon_vma_clone(new_vma, vma))
goto out_free_mempol;
if (new_vma->vm_file)
@ -359,7 +359,7 @@ index 632df45..02d770e 100644
goto out;
down_read(&mm->mmap_sem);
diff --git a/mm/nommu.c b/mm/nommu.c
index ecd1f15..d4306cd 100644
index fec093a..b366e4c 100644
--- a/mm/nommu.c
+++ b/mm/nommu.c
@@ -652,7 +652,7 @@ static void __put_nommu_region(struct vm_region *region)

View File

@ -1,36 +1,15 @@
From: J. R. Okajima <hooanon05@yahoo.co.jp>
Date: Tue Nov 5 13:13:07 2013 +0900
Subject: aufs3.12 standalone patch
Origin: http://sourceforge.net/p/aufs/aufs3-standalone/ci/4a7364f2f7c6db8bb880d7aefbeb34efc1d66ad4/tree/
Date: Wed Dec 18 12:37:33 2013 +0900
Subject: aufs3.x-rcN standalone patch
Origin: http://sourceforge.net/p/aufs/aufs3-standalone/ci/7b136a27b021da9010d8b6c101939dd298e46be7/tree/
Bug-Debian: http://bugs.debian.org/541828
Patch headers added by debian/patches/features/all/aufs3/gen-patch
aufs3.12 standalone patch
aufs3.x-rcN standalone patch
diff --git a/fs/file_table.c b/fs/file_table.c
index ccd02ee..710c617 100644
--- a/fs/file_table.c
+++ b/fs/file_table.c
@@ -37,6 +37,7 @@ struct files_stat_struct files_stat = {
};
DEFINE_LGLOCK(files_lglock);
+EXPORT_SYMBOL_GPL(files_lglock);
/* SLAB cache for file structures */
static struct kmem_cache *filp_cachep __read_mostly;
@@ -410,6 +411,8 @@ void file_sb_list_del(struct file *file)
}
}
+EXPORT_SYMBOL_GPL(file_sb_list_del);
+
#ifdef CONFIG_SMP
/*
diff --git a/fs/inode.c b/fs/inode.c
index 9b24434..6ee4b0b 100644
index bc83168..6dd1207 100644
--- a/fs/inode.c
+++ b/fs/inode.c
@@ -57,6 +57,7 @@ static struct hlist_head *inode_hashtable __read_mostly;
@ -41,7 +20,7 @@ index 9b24434..6ee4b0b 100644
/*
* Empty aops. Can be used for the cases where the user does not
@@ -1485,6 +1486,7 @@ int update_time(struct inode *inode, struct timespec *time, int flags)
@@ -1513,6 +1514,7 @@ int update_time(struct inode *inode, struct timespec *time, int flags)
mark_inode_dirty_sync(inode);
return 0;
}
@ -50,18 +29,10 @@ index 9b24434..6ee4b0b 100644
/**
* touch_atime - update the access time
diff --git a/fs/namespace.c b/fs/namespace.c
index da5c494..f40ae6f 100644
index ac2ce8a..83b0135 100644
--- a/fs/namespace.c
+++ b/fs/namespace.c
@@ -54,6 +54,7 @@ EXPORT_SYMBOL_GPL(fs_kobj);
* tree or hash is modified or when a vfsmount structure is modified.
*/
DEFINE_BRLOCK(vfsmount_lock);
+EXPORT_SYMBOL_GPL(vfsmount_lock);
static inline unsigned long hash(struct vfsmount *mnt, struct dentry *dentry)
{
@@ -427,6 +428,7 @@ void __mnt_drop_write(struct vfsmount *mnt)
@@ -425,6 +425,7 @@ void __mnt_drop_write(struct vfsmount *mnt)
mnt_dec_writers(real_mount(mnt));
preempt_enable();
}
@ -69,7 +40,7 @@ index da5c494..f40ae6f 100644
/**
* mnt_drop_write - give up write access to a mount
@@ -1480,6 +1482,7 @@ int iterate_mounts(int (*f)(struct vfsmount *, void *), void *arg,
@@ -1509,6 +1510,7 @@ int iterate_mounts(int (*f)(struct vfsmount *, void *), void *arg,
}
return 0;
}
@ -150,10 +121,10 @@ index 923fe4a..176b435 100644
static int fsnotify_mark_destroy(void *ignored)
{
diff --git a/fs/open.c b/fs/open.c
index d420331..6dd3b03 100644
index 4b3e1ed..ce49f2b 100644
--- a/fs/open.c
+++ b/fs/open.c
@@ -61,6 +61,7 @@ int do_truncate(struct dentry *dentry, loff_t length, unsigned int time_attrs,
@@ -62,6 +62,7 @@ int do_truncate(struct dentry *dentry, loff_t length, unsigned int time_attrs,
mutex_unlock(&dentry->d_inode->i_mutex);
return ret;
}
@ -162,7 +133,7 @@ index d420331..6dd3b03 100644
long vfs_truncate(struct path *path, loff_t length)
{
diff --git a/fs/splice.c b/fs/splice.c
index e147583..789f6b2 100644
index 719ca3e..6300dc8 100644
--- a/fs/splice.c
+++ b/fs/splice.c
@@ -1106,6 +1106,7 @@ long do_splice_from(struct pipe_inode_info *pipe, struct file *out,
@ -198,7 +169,7 @@ index b9d613e..ba3b618 100644
}
+EXPORT_SYMBOL_GPL(cap_mmap_file);
diff --git a/security/device_cgroup.c b/security/device_cgroup.c
index c123628..efc6f68 100644
index 7c2a0a7..a37c054 100644
--- a/security/device_cgroup.c
+++ b/security/device_cgroup.c
@@ -7,6 +7,7 @@
@ -209,7 +180,7 @@ index c123628..efc6f68 100644
#include <linux/list.h>
#include <linux/uaccess.h>
#include <linux/seq_file.h>
@@ -756,6 +757,7 @@ int __devcgroup_inode_permission(struct inode *inode, int mask)
@@ -745,6 +746,7 @@ int __devcgroup_inode_permission(struct inode *inode, int mask)
return __devcgroup_check_permission(type, imajor(inode), iminor(inode),
access);
}
@ -218,7 +189,7 @@ index c123628..efc6f68 100644
int devcgroup_inode_mknod(int mode, dev_t dev)
{
diff --git a/security/security.c b/security/security.c
index 4dc31f4..1f272bc 100644
index 15b6928..ae6eba6 100644
--- a/security/security.c
+++ b/security/security.c
@@ -407,6 +407,7 @@ int security_path_rmdir(struct path *dir, struct dentry *dentry)

18
debian/patches/series vendored
View File

@ -19,15 +19,15 @@ bugfix/all/firmware_class-log-every-success-and-failure.patch
bugfix/all/firmware-remove-redundant-log-messages-from-drivers.patch
bugfix/all/radeon-firmware-is-required-for-drm-and-kms-on-r600-onward.patch
# # Patches and source files from aufs3 repository, imported with
# # debian/patches/features/all/aufs3/gen-patch.
# features/all/aufs3/aufs3-kbuild.patch
# features/all/aufs3/aufs3-base.patch
# features/all/aufs3/aufs3-mmap.patch
# features/all/aufs3/aufs3-standalone.patch
# features/all/aufs3/aufs3-add.patch
# # Debian-specific changes
# debian/aufs3-mark-as-staging.patch
# Patches and source files from aufs3 repository, imported with
# debian/patches/features/all/aufs3/gen-patch.
features/all/aufs3/aufs3-kbuild.patch
features/all/aufs3/aufs3-base.patch
features/all/aufs3/aufs3-mmap.patch
features/all/aufs3/aufs3-standalone.patch
features/all/aufs3/aufs3-add.patch
# Debian-specific changes
debian/aufs3-mark-as-staging.patch
# Change some defaults for security reasons
debian/af_802154-Disable-auto-loading-as-mitigation-against.patch