summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTobias Powalowski <tobias@T-POWA-LX.(none)>2011-01-05 21:41:45 +0100
committerTobias Powalowski <tobias@T-POWA-LX.(none)>2011-01-05 21:41:45 +0100
commit9a1092bdf89d805634de2660fadff7a2ca6c6830 (patch)
tree7148fbda0eb20cc928ffc04996a5abb0c6149270
parent7f9511aca113d2c735437bc9ba9a759f8620db1e (diff)
bump to .37 series
-rw-r--r--PATCHCFG17
-rw-r--r--patches/aufs2-2.6.36.patch130
-rw-r--r--patches/aufs2-base-20110105.patch (renamed from patches/aufs2-base-20101021.patch)11
-rw-r--r--patches/aufs2-standalone-20110105.patch (renamed from patches/aufs2-standalone-20101021.patch)75
4 files changed, 62 insertions, 171 deletions
diff --git a/PATCHCFG b/PATCHCFG
index 40f48c2..c1b2ab8 100644
--- a/PATCHCFG
+++ b/PATCHCFG
@@ -1,28 +1,27 @@
# Kernel source file
-SRC="ftp://ftp.kernel.org/pub/linux/kernel/v2.6/linux-2.6.36.tar.bz2"
+SRC="ftp://ftp.kernel.org/pub/linux/kernel/v2.6/linux-2.6.37.tar.bz2"
# Original source directory
-SRCORIG="linux-2.6.36"
+SRCORIG="linux-2.6.37"
# Our source directory
-SRCNAME="linux-2.6.36-ARCH"
+SRCNAME="linux-2.6.37-ARCH"
# Patches:
# URL%patchlevel
# or
# filename%patchlevel (file must be in patches/ subdirectory)
PATCHES=(
- # add upstream patch from 2.6.36 series
- ftp://ftp.kernel.org/pub/linux/kernel/v2.6/patch-2.6.36.2.bz2%1
+ # add upstream patch from 2.6.37 series
+ #ftp://ftp.kernel.org/pub/linux/kernel/v2.6/patch-2.6.37.1.bz2%1
# add latest fixes from stable queue, if needed
# http://git.kernel.org/?p=linux/kernel/git/stable/stable-queue.git
# add aufs2 support, in reference to:
# http://aufs.sourceforge.net
- aufs2-base-20101021.patch%1
- aufs2-standalone-20101021.patch%1
- aufs2-2.6.36.patch%1
+ aufs2-base-20110105.patch%1
+ aufs2-standalone-20110105.patch%1
)
# Name of the resulting patch (will be bzipped afterwards)
-PATCHNAME="patch-2.6.36.2-1-ARCH"
+PATCHNAME="patch-2.6.37-1-ARCH"
# Run this before applying patches
pre_apply() {
diff --git a/patches/aufs2-2.6.36.patch b/patches/aufs2-2.6.36.patch
deleted file mode 100644
index 6fa2900..0000000
--- a/patches/aufs2-2.6.36.patch
+++ /dev/null
@@ -1,130 +0,0 @@
-diff --git a/fs/file_table.c b/fs/file_table.c
-index a04bdd8..fbf8908 100644
---- a/fs/file_table.c
-+++ b/fs/file_table.c
-@@ -20,7 +20,6 @@
- #include <linux/cdev.h>
- #include <linux/fsnotify.h>
- #include <linux/sysctl.h>
--#include <linux/lglock.h>
- #include <linux/percpu_counter.h>
- #include <linux/percpu.h>
- #include <linux/ima.h>
-@@ -34,7 +33,6 @@ struct files_stat_struct files_stat = {
- .max_files = NR_FILE
- };
-
--DECLARE_LGLOCK(files_lglock);
- DEFINE_LGLOCK(files_lglock);
-
- /* SLAB cache for file structures */
-@@ -394,37 +392,6 @@ void file_sb_list_del(struct file *file)
- }
- }
-
--#ifdef CONFIG_SMP
--
--/*
-- * These macros iterate all files on all CPUs for a given superblock.
-- * files_lglock must be held globally.
-- */
--#define do_file_list_for_each_entry(__sb, __file) \
--{ \
-- int i; \
-- for_each_possible_cpu(i) { \
-- struct list_head *list; \
-- list = per_cpu_ptr((__sb)->s_files, i); \
-- list_for_each_entry((__file), list, f_u.fu_list)
--
--#define while_file_list_for_each_entry \
-- } \
--}
--
--#else
--
--#define do_file_list_for_each_entry(__sb, __file) \
--{ \
-- struct list_head *list; \
-- list = &(sb)->s_files; \
-- list_for_each_entry((__file), list, f_u.fu_list)
--
--#define while_file_list_for_each_entry \
--}
--
--#endif
--
- int fs_may_remount_ro(struct super_block *sb)
- {
- struct file *file;
-diff --git a/fs/statfs.c b/fs/statfs.c
-index 30ea8c8..9025c98 100644
---- a/fs/statfs.c
-+++ b/fs/statfs.c
-@@ -61,6 +61,7 @@ int statfs_by_dentry(struct dentry *dentry, struct kstatfs *buf)
- buf->f_frsize = buf->f_bsize;
- return retval;
- }
-+EXPORT_SYMBOL(statfs_by_dentry);
-
- int vfs_statfs(struct path *path, struct kstatfs *buf)
- {
-diff --git a/include/linux/fs.h b/include/linux/fs.h
-index 63d069b..741d296 100644
---- a/include/linux/fs.h
-+++ b/include/linux/fs.h
-@@ -9,6 +9,7 @@
- #include <linux/limits.h>
- #include <linux/ioctl.h>
- #include <linux/blk_types.h>
-+#include <linux/lglock.h>
-
- /*
- * It's silly to have NR_OPEN bigger than NR_FILE, but you can change
-@@ -1814,6 +1815,7 @@ extern struct vfsmount *collect_mounts(struct path *);
- extern void drop_collected_mounts(struct vfsmount *);
- extern int iterate_mounts(int (*)(struct vfsmount *, void *), void *,
- struct vfsmount *);
-+extern int statfs_by_dentry(struct dentry *dentry, struct kstatfs *buf);
- extern int vfs_statfs(struct path *, struct kstatfs *);
- extern int statfs_by_dentry(struct dentry *, struct kstatfs *);
- extern int freeze_super(struct super_block *super);
-@@ -2481,5 +2483,39 @@ int __init get_filesystem_list(char *buf);
- #define OPEN_FMODE(flag) ((__force fmode_t)(((flag + 1) & O_ACCMODE) | \
- (flag & FMODE_NONOTIFY)))
-
-+
-+DECLARE_LGLOCK(files_lglock);
-+
-+#ifdef CONFIG_SMP
-+
-+/*
-+ * These macros iterate all files on all CPUs for a given superblock.
-+ * files_lglock must be held globally.
-+ */
-+#define do_file_list_for_each_entry(__sb, __file) \
-+{ \
-+ int i; \
-+ for_each_possible_cpu(i) { \
-+ struct list_head *list; \
-+ list = per_cpu_ptr((__sb)->s_files, i); \
-+ list_for_each_entry((__file), list, f_u.fu_list)
-+
-+#define while_file_list_for_each_entry \
-+ } \
-+}
-+
-+#else
-+
-+#define do_file_list_for_each_entry(__sb, __file) \
-+{ \
-+ struct list_head *list; \
-+ list = &(sb)->s_files; \
-+ list_for_each_entry((__file), list, f_u.fu_list)
-+
-+#define while_file_list_for_each_entry \
-+}
-+
-+#endif
-+
- #endif /* __KERNEL__ */
- #endif /* _LINUX_FS_H */
diff --git a/patches/aufs2-base-20101021.patch b/patches/aufs2-base-20110105.patch
index fda00b8..02c243d 100644
--- a/patches/aufs2-base-20101021.patch
+++ b/patches/aufs2-base-20110105.patch
@@ -1,19 +1,16 @@
-aufs2 base patch for linux-2.6.
+aufs2.1 base patch for linux-2.6.
diff --git a/fs/namei.c b/fs/namei.c
-index 17ea76b..56e8ece 100644
+index 5362af9..5fe904d 100644
--- a/fs/namei.c
+++ b/fs/namei.c
-@@ -1168,7 +1168,7 @@ out:
+@@ -1161,12 +1161,12 @@ out:
* needs parent already locked. Doesn't follow mounts.
* SMP-safe.
*/
-static struct dentry *lookup_hash(struct nameidata *nd)
+struct dentry *lookup_hash(struct nameidata *nd)
{
- int err;
-
-@@ -1178,7 +1178,7 @@ static struct dentry *lookup_hash(struct nameidata *nd)
return __lookup_hash(&nd->last, nd->path.dentry, nd);
}
@@ -23,7 +20,7 @@ index 17ea76b..56e8ece 100644
{
unsigned long hash;
diff --git a/fs/splice.c b/fs/splice.c
-index 8f1dfae..278c94f 100644
+index ce2f025..ff0ae69 100644
--- a/fs/splice.c
+++ b/fs/splice.c
@@ -1092,8 +1092,8 @@ EXPORT_SYMBOL(generic_splice_sendpage);
diff --git a/patches/aufs2-standalone-20101021.patch b/patches/aufs2-standalone-20110105.patch
index 2df3fbe..d10df2b 100644
--- a/patches/aufs2-standalone-20101021.patch
+++ b/patches/aufs2-standalone-20110105.patch
@@ -1,7 +1,32 @@
-aufs2 standalone patch for linux-2.6.
+aufs2.1 standalone patch for linux-2.6.
+diff --git a/fs/file_table.c b/fs/file_table.c
+index c3dee38..f529e4d 100644
+--- a/fs/file_table.c
++++ b/fs/file_table.c
+@@ -393,6 +393,8 @@ void file_sb_list_del(struct file *file)
+ }
+ }
+
++EXPORT_SYMBOL(file_sb_list_del);
++
+ #ifdef CONFIG_SMP
+
+ /*
+diff --git a/fs/inode.c b/fs/inode.c
+index ae2727a..2c8071a 100644
+--- a/fs/inode.c
++++ b/fs/inode.c
+@@ -82,6 +82,7 @@ static struct hlist_head *inode_hashtable __read_mostly;
+ * the i_state of an inode while it is in use..
+ */
+ DEFINE_SPINLOCK(inode_lock);
++EXPORT_SYMBOL(inode_lock);
+
+ /*
+ * iprune_sem provides exclusion between the kswapd or try_to_free_pages
diff --git a/fs/namei.c b/fs/namei.c
-index 56e8ece..ba75f28 100644
+index 5fe904d..8af12f7 100644
--- a/fs/namei.c
+++ b/fs/namei.c
@@ -347,6 +347,7 @@ int deny_write_access(struct file * file)
@@ -12,15 +37,15 @@ index 56e8ece..ba75f28 100644
/**
* path_get - get a reference to a path
-@@ -1177,6 +1178,7 @@ struct dentry *lookup_hash(struct nameidata *nd)
- return ERR_PTR(err);
+@@ -1165,6 +1166,7 @@ struct dentry *lookup_hash(struct nameidata *nd)
+ {
return __lookup_hash(&nd->last, nd->path.dentry, nd);
}
+EXPORT_SYMBOL(lookup_hash);
int __lookup_one_len(const char *name, struct qstr *this,
struct dentry *base, int len)
-@@ -1199,6 +1201,7 @@ int __lookup_one_len(const char *name, struct qstr *this,
+@@ -1187,6 +1189,7 @@ int __lookup_one_len(const char *name, struct qstr *this,
this->hash = end_name_hash(hash);
return 0;
}
@@ -29,10 +54,10 @@ index 56e8ece..ba75f28 100644
/**
* lookup_one_len - filesystem helper to lookup single pathname component
diff --git a/fs/namespace.c b/fs/namespace.c
-index 2e10cb1..8fa77c4 100644
+index 3dbfc07..3998762 100644
--- a/fs/namespace.c
+++ b/fs/namespace.c
-@@ -1283,6 +1283,7 @@ int iterate_mounts(int (*f)(struct vfsmount *, void *), void *arg,
+@@ -1321,6 +1321,7 @@ int iterate_mounts(int (*f)(struct vfsmount *, void *), void *arg,
}
return 0;
}
@@ -102,7 +127,7 @@ index 325185e..adede09 100644
static int fsnotify_mark_destroy(void *ignored)
{
diff --git a/fs/open.c b/fs/open.c
-index 630715f..1c864c7 100644
+index 4197b9e..912817a 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,
@@ -114,7 +139,7 @@ index 630715f..1c864c7 100644
static long do_sys_truncate(const char __user *pathname, loff_t length)
{
diff --git a/fs/splice.c b/fs/splice.c
-index 278c94f..033f7ac 100644
+index ff0ae69..1c9e9b0 100644
--- a/fs/splice.c
+++ b/fs/splice.c
@@ -1116,6 +1116,7 @@ long do_splice_from(struct pipe_inode_info *pipe, struct file *out,
@@ -134,10 +159,10 @@ index 278c94f..033f7ac 100644
/**
* splice_direct_to_actor - splices data directly between two non-pipes
diff --git a/security/commoncap.c b/security/commoncap.c
-index 4e01599..3611e1b 100644
+index 64c2ed9..e58b5d8 100644
--- a/security/commoncap.c
+++ b/security/commoncap.c
-@@ -951,3 +951,4 @@ int cap_file_mmap(struct file *file, unsigned long reqprot,
+@@ -929,3 +929,4 @@ int cap_file_mmap(struct file *file, unsigned long reqprot,
}
return ret;
}
@@ -155,10 +180,10 @@ index 8d9c48f..29108aa 100644
int devcgroup_inode_mknod(int mode, dev_t dev)
{
diff --git a/security/security.c b/security/security.c
-index c53949f..0ae5b91 100644
+index 1b798d3..3b7d2ca 100644
--- a/security/security.c
+++ b/security/security.c
-@@ -376,6 +376,7 @@ int security_path_mkdir(struct path *dir, struct dentry *dentry, int mode)
+@@ -360,6 +360,7 @@ int security_path_mkdir(struct path *dir, struct dentry *dentry, int mode)
return 0;
return security_ops->path_mkdir(dir, dentry, mode);
}
@@ -166,7 +191,7 @@ index c53949f..0ae5b91 100644
int security_path_rmdir(struct path *dir, struct dentry *dentry)
{
-@@ -383,6 +384,7 @@ int security_path_rmdir(struct path *dir, struct dentry *dentry)
+@@ -367,6 +368,7 @@ int security_path_rmdir(struct path *dir, struct dentry *dentry)
return 0;
return security_ops->path_rmdir(dir, dentry);
}
@@ -174,7 +199,7 @@ index c53949f..0ae5b91 100644
int security_path_unlink(struct path *dir, struct dentry *dentry)
{
-@@ -390,6 +392,7 @@ int security_path_unlink(struct path *dir, struct dentry *dentry)
+@@ -374,6 +376,7 @@ int security_path_unlink(struct path *dir, struct dentry *dentry)
return 0;
return security_ops->path_unlink(dir, dentry);
}
@@ -182,7 +207,7 @@ index c53949f..0ae5b91 100644
int security_path_symlink(struct path *dir, struct dentry *dentry,
const char *old_name)
-@@ -398,6 +401,7 @@ int security_path_symlink(struct path *dir, struct dentry *dentry,
+@@ -382,6 +385,7 @@ int security_path_symlink(struct path *dir, struct dentry *dentry,
return 0;
return security_ops->path_symlink(dir, dentry, old_name);
}
@@ -190,7 +215,7 @@ index c53949f..0ae5b91 100644
int security_path_link(struct dentry *old_dentry, struct path *new_dir,
struct dentry *new_dentry)
-@@ -406,6 +410,7 @@ int security_path_link(struct dentry *old_dentry, struct path *new_dir,
+@@ -390,6 +394,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);
}
@@ -198,7 +223,7 @@ index c53949f..0ae5b91 100644
int security_path_rename(struct path *old_dir, struct dentry *old_dentry,
struct path *new_dir, struct dentry *new_dentry)
-@@ -416,6 +421,7 @@ int security_path_rename(struct path *old_dir, struct dentry *old_dentry,
+@@ -400,6 +405,7 @@ int security_path_rename(struct path *old_dir, struct dentry *old_dentry,
return security_ops->path_rename(old_dir, old_dentry, new_dir,
new_dentry);
}
@@ -206,7 +231,7 @@ index c53949f..0ae5b91 100644
int security_path_truncate(struct path *path)
{
-@@ -423,6 +429,7 @@ int security_path_truncate(struct path *path)
+@@ -407,6 +413,7 @@ int security_path_truncate(struct path *path)
return 0;
return security_ops->path_truncate(path);
}
@@ -214,7 +239,7 @@ index c53949f..0ae5b91 100644
int security_path_chmod(struct dentry *dentry, struct vfsmount *mnt,
mode_t mode)
-@@ -431,6 +438,7 @@ int security_path_chmod(struct dentry *dentry, struct vfsmount *mnt,
+@@ -415,6 +422,7 @@ int security_path_chmod(struct dentry *dentry, struct vfsmount *mnt,
return 0;
return security_ops->path_chmod(dentry, mnt, mode);
}
@@ -222,7 +247,7 @@ index c53949f..0ae5b91 100644
int security_path_chown(struct path *path, uid_t uid, gid_t gid)
{
-@@ -438,6 +446,7 @@ int security_path_chown(struct path *path, uid_t uid, gid_t gid)
+@@ -422,6 +430,7 @@ int security_path_chown(struct path *path, uid_t uid, gid_t gid)
return 0;
return security_ops->path_chown(path, uid, gid);
}
@@ -230,7 +255,7 @@ index c53949f..0ae5b91 100644
int security_path_chroot(struct path *path)
{
-@@ -514,6 +523,7 @@ int security_inode_readlink(struct dentry *dentry)
+@@ -498,6 +507,7 @@ int security_inode_readlink(struct dentry *dentry)
return 0;
return security_ops->inode_readlink(dentry);
}
@@ -238,7 +263,7 @@ index c53949f..0ae5b91 100644
int security_inode_follow_link(struct dentry *dentry, struct nameidata *nd)
{
-@@ -528,6 +538,7 @@ int security_inode_permission(struct inode *inode, int mask)
+@@ -512,6 +522,7 @@ int security_inode_permission(struct inode *inode, int mask)
return 0;
return security_ops->inode_permission(inode, mask);
}
@@ -246,7 +271,7 @@ index c53949f..0ae5b91 100644
int security_inode_setattr(struct dentry *dentry, struct iattr *attr)
{
-@@ -627,6 +638,7 @@ int security_file_permission(struct file *file, int mask)
+@@ -611,6 +622,7 @@ int security_file_permission(struct file *file, int mask)
return fsnotify_perm(file, mask);
}
@@ -254,7 +279,7 @@ index c53949f..0ae5b91 100644
int security_file_alloc(struct file *file)
{
-@@ -654,6 +666,7 @@ int security_file_mmap(struct file *file, unsigned long reqprot,
+@@ -638,6 +650,7 @@ int security_file_mmap(struct file *file, unsigned long reqprot,
return ret;
return ima_file_mmap(file, prot);
}