wok-6.x diff linux-libre/stuff/aufs2-standalone.patch @ rev 19252
Up cookutils (802).
author | Aleksej Bobylev <al.bobylev@gmail.com> |
---|---|
date | Thu Jun 30 22:26:22 2016 +0300 (2016-06-30) |
parents | |
children |
line diff
1.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 1.2 +++ b/linux-libre/stuff/aufs2-standalone.patch Thu Jun 30 22:26:22 2016 +0300 1.3 @@ -0,0 +1,289 @@ 1.4 +aufs2.1 standalone patch for linux-2.6.37 1.5 + 1.6 +diff --git a/fs/file_table.c b/fs/file_table.c 1.7 +index c3dee38..f529e4d 100644 1.8 +--- a/fs/file_table.c 1.9 ++++ b/fs/file_table.c 1.10 +@@ -393,6 +393,8 @@ void file_sb_list_del(struct file *file) 1.11 + } 1.12 + } 1.13 + 1.14 ++EXPORT_SYMBOL(file_sb_list_del); 1.15 ++ 1.16 + #ifdef CONFIG_SMP 1.17 + 1.18 + /* 1.19 +diff --git a/fs/inode.c b/fs/inode.c 1.20 +index ae2727a..2c8071a 100644 1.21 +--- a/fs/inode.c 1.22 ++++ b/fs/inode.c 1.23 +@@ -82,6 +82,7 @@ static struct hlist_head *inode_hashtable __read_mostly; 1.24 + * the i_state of an inode while it is in use.. 1.25 + */ 1.26 + DEFINE_SPINLOCK(inode_lock); 1.27 ++EXPORT_SYMBOL(inode_lock); 1.28 + 1.29 + /* 1.30 + * iprune_sem provides exclusion between the kswapd or try_to_free_pages 1.31 +diff --git a/fs/namei.c b/fs/namei.c 1.32 +index a8c583f..b020c45 100644 1.33 +--- a/fs/namei.c 1.34 ++++ b/fs/namei.c 1.35 +@@ -347,6 +347,7 @@ int deny_write_access(struct file * file) 1.36 + 1.37 + return 0; 1.38 + } 1.39 ++EXPORT_SYMBOL(deny_write_access); 1.40 + 1.41 + /** 1.42 + * path_get - get a reference to a path 1.43 +@@ -1165,6 +1166,7 @@ struct dentry *lookup_hash(struct nameidata *nd) 1.44 + { 1.45 + return __lookup_hash(&nd->last, nd->path.dentry, nd); 1.46 + } 1.47 ++EXPORT_SYMBOL(lookup_hash); 1.48 + 1.49 + int __lookup_one_len(const char *name, struct qstr *this, 1.50 + struct dentry *base, int len) 1.51 +@@ -1187,6 +1189,7 @@ int __lookup_one_len(const char *name, struct qstr *this, 1.52 + this->hash = end_name_hash(hash); 1.53 + return 0; 1.54 + } 1.55 ++EXPORT_SYMBOL(__lookup_one_len); 1.56 + 1.57 + /** 1.58 + * lookup_one_len - filesystem helper to lookup single pathname component 1.59 +diff --git a/fs/namespace.c b/fs/namespace.c 1.60 +index 3dbfc07..3998762 100644 1.61 +--- a/fs/namespace.c 1.62 ++++ b/fs/namespace.c 1.63 +@@ -1321,6 +1321,7 @@ int iterate_mounts(int (*f)(struct vfsmount *, void *), void *arg, 1.64 + } 1.65 + return 0; 1.66 + } 1.67 ++EXPORT_SYMBOL(iterate_mounts); 1.68 + 1.69 + static void cleanup_group_ids(struct vfsmount *mnt, struct vfsmount *end) 1.70 + { 1.71 +diff --git a/fs/notify/group.c b/fs/notify/group.c 1.72 +index d309f38..f0e9568 100644 1.73 +--- a/fs/notify/group.c 1.74 ++++ b/fs/notify/group.c 1.75 +@@ -22,6 +22,7 @@ 1.76 + #include <linux/srcu.h> 1.77 + #include <linux/rculist.h> 1.78 + #include <linux/wait.h> 1.79 ++#include <linux/module.h> 1.80 + 1.81 + #include <linux/fsnotify_backend.h> 1.82 + #include "fsnotify.h" 1.83 +@@ -70,6 +71,7 @@ void fsnotify_put_group(struct fsnotify_group *group) 1.84 + if (atomic_dec_and_test(&group->refcnt)) 1.85 + fsnotify_destroy_group(group); 1.86 + } 1.87 ++EXPORT_SYMBOL(fsnotify_put_group); 1.88 + 1.89 + /* 1.90 + * Create a new fsnotify_group and hold a reference for the group returned. 1.91 +@@ -102,3 +104,4 @@ struct fsnotify_group *fsnotify_alloc_group(const struct fsnotify_ops *ops) 1.92 + 1.93 + return group; 1.94 + } 1.95 ++EXPORT_SYMBOL(fsnotify_alloc_group); 1.96 +diff --git a/fs/notify/mark.c b/fs/notify/mark.c 1.97 +index 325185e..adede09 100644 1.98 +--- a/fs/notify/mark.c 1.99 ++++ b/fs/notify/mark.c 1.100 +@@ -113,6 +113,7 @@ void fsnotify_put_mark(struct fsnotify_mark *mark) 1.101 + if (atomic_dec_and_test(&mark->refcnt)) 1.102 + mark->free_mark(mark); 1.103 + } 1.104 ++EXPORT_SYMBOL(fsnotify_put_mark); 1.105 + 1.106 + /* 1.107 + * Any time a mark is getting freed we end up here. 1.108 +@@ -190,6 +191,7 @@ void fsnotify_destroy_mark(struct fsnotify_mark *mark) 1.109 + if (unlikely(atomic_dec_and_test(&group->num_marks))) 1.110 + fsnotify_final_destroy_group(group); 1.111 + } 1.112 ++EXPORT_SYMBOL(fsnotify_destroy_mark); 1.113 + 1.114 + void fsnotify_set_mark_mask_locked(struct fsnotify_mark *mark, __u32 mask) 1.115 + { 1.116 +@@ -277,6 +279,7 @@ err: 1.117 + 1.118 + return ret; 1.119 + } 1.120 ++EXPORT_SYMBOL(fsnotify_add_mark); 1.121 + 1.122 + /* 1.123 + * clear any marks in a group in which mark->flags & flags is true 1.124 +@@ -332,6 +335,7 @@ void fsnotify_init_mark(struct fsnotify_mark *mark, 1.125 + atomic_set(&mark->refcnt, 1); 1.126 + mark->free_mark = free_mark; 1.127 + } 1.128 ++EXPORT_SYMBOL(fsnotify_init_mark); 1.129 + 1.130 + static int fsnotify_mark_destroy(void *ignored) 1.131 + { 1.132 +diff --git a/fs/open.c b/fs/open.c 1.133 +index 4197b9e..912817a 100644 1.134 +--- a/fs/open.c 1.135 ++++ b/fs/open.c 1.136 +@@ -60,6 +60,7 @@ int do_truncate(struct dentry *dentry, loff_t length, unsigned int time_attrs, 1.137 + mutex_unlock(&dentry->d_inode->i_mutex); 1.138 + return ret; 1.139 + } 1.140 ++EXPORT_SYMBOL(do_truncate); 1.141 + 1.142 + static long do_sys_truncate(const char __user *pathname, loff_t length) 1.143 + { 1.144 +diff --git a/fs/splice.c b/fs/splice.c 1.145 +index ff0ae69..1c9e9b0 100644 1.146 +--- a/fs/splice.c 1.147 ++++ b/fs/splice.c 1.148 +@@ -1116,6 +1116,7 @@ long do_splice_from(struct pipe_inode_info *pipe, struct file *out, 1.149 + 1.150 + return splice_write(pipe, out, ppos, len, flags); 1.151 + } 1.152 ++EXPORT_SYMBOL(do_splice_from); 1.153 + 1.154 + /* 1.155 + * Attempt to initiate a splice from a file to a pipe. 1.156 +@@ -1142,6 +1143,7 @@ long do_splice_to(struct file *in, loff_t *ppos, 1.157 + 1.158 + return splice_read(in, ppos, pipe, len, flags); 1.159 + } 1.160 ++EXPORT_SYMBOL(do_splice_to); 1.161 + 1.162 + /** 1.163 + * splice_direct_to_actor - splices data directly between two non-pipes 1.164 +diff --git a/security/commoncap.c b/security/commoncap.c 1.165 +index 64c2ed9..e58b5d8 100644 1.166 +--- a/security/commoncap.c 1.167 ++++ b/security/commoncap.c 1.168 +@@ -929,3 +929,4 @@ int cap_file_mmap(struct file *file, unsigned long reqprot, 1.169 + } 1.170 + return ret; 1.171 + } 1.172 ++EXPORT_SYMBOL(cap_file_mmap); 1.173 +diff --git a/security/device_cgroup.c b/security/device_cgroup.c 1.174 +index 8d9c48f..29108aa 100644 1.175 +--- a/security/device_cgroup.c 1.176 ++++ b/security/device_cgroup.c 1.177 +@@ -515,6 +515,7 @@ found: 1.178 + 1.179 + return -EPERM; 1.180 + } 1.181 ++EXPORT_SYMBOL(devcgroup_inode_permission); 1.182 + 1.183 + int devcgroup_inode_mknod(int mode, dev_t dev) 1.184 + { 1.185 +diff --git a/security/security.c b/security/security.c 1.186 +index 1b798d3..3b7d2ca 100644 1.187 +--- a/security/security.c 1.188 ++++ b/security/security.c 1.189 +@@ -360,6 +360,7 @@ int security_path_mkdir(struct path *dir, struct dentry *dentry, int mode) 1.190 + return 0; 1.191 + return security_ops->path_mkdir(dir, dentry, mode); 1.192 + } 1.193 ++EXPORT_SYMBOL(security_path_mkdir); 1.194 + 1.195 + int security_path_rmdir(struct path *dir, struct dentry *dentry) 1.196 + { 1.197 +@@ -367,6 +368,7 @@ int security_path_rmdir(struct path *dir, struct dentry *dentry) 1.198 + return 0; 1.199 + return security_ops->path_rmdir(dir, dentry); 1.200 + } 1.201 ++EXPORT_SYMBOL(security_path_rmdir); 1.202 + 1.203 + int security_path_unlink(struct path *dir, struct dentry *dentry) 1.204 + { 1.205 +@@ -374,6 +376,7 @@ int security_path_unlink(struct path *dir, struct dentry *dentry) 1.206 + return 0; 1.207 + return security_ops->path_unlink(dir, dentry); 1.208 + } 1.209 ++EXPORT_SYMBOL(security_path_unlink); 1.210 + 1.211 + int security_path_symlink(struct path *dir, struct dentry *dentry, 1.212 + const char *old_name) 1.213 +@@ -382,6 +385,7 @@ int security_path_symlink(struct path *dir, struct dentry *dentry, 1.214 + return 0; 1.215 + return security_ops->path_symlink(dir, dentry, old_name); 1.216 + } 1.217 ++EXPORT_SYMBOL(security_path_symlink); 1.218 + 1.219 + int security_path_link(struct dentry *old_dentry, struct path *new_dir, 1.220 + struct dentry *new_dentry) 1.221 +@@ -390,6 +394,7 @@ int security_path_link(struct dentry *old_dentry, struct path *new_dir, 1.222 + return 0; 1.223 + return security_ops->path_link(old_dentry, new_dir, new_dentry); 1.224 + } 1.225 ++EXPORT_SYMBOL(security_path_link); 1.226 + 1.227 + int security_path_rename(struct path *old_dir, struct dentry *old_dentry, 1.228 + struct path *new_dir, struct dentry *new_dentry) 1.229 +@@ -400,6 +405,7 @@ int security_path_rename(struct path *old_dir, struct dentry *old_dentry, 1.230 + return security_ops->path_rename(old_dir, old_dentry, new_dir, 1.231 + new_dentry); 1.232 + } 1.233 ++EXPORT_SYMBOL(security_path_rename); 1.234 + 1.235 + int security_path_truncate(struct path *path) 1.236 + { 1.237 +@@ -407,6 +413,7 @@ int security_path_truncate(struct path *path) 1.238 + return 0; 1.239 + return security_ops->path_truncate(path); 1.240 + } 1.241 ++EXPORT_SYMBOL(security_path_truncate); 1.242 + 1.243 + int security_path_chmod(struct dentry *dentry, struct vfsmount *mnt, 1.244 + mode_t mode) 1.245 +@@ -415,6 +422,7 @@ int security_path_chmod(struct dentry *dentry, struct vfsmount *mnt, 1.246 + return 0; 1.247 + return security_ops->path_chmod(dentry, mnt, mode); 1.248 + } 1.249 ++EXPORT_SYMBOL(security_path_chmod); 1.250 + 1.251 + int security_path_chown(struct path *path, uid_t uid, gid_t gid) 1.252 + { 1.253 +@@ -422,6 +430,7 @@ int security_path_chown(struct path *path, uid_t uid, gid_t gid) 1.254 + return 0; 1.255 + return security_ops->path_chown(path, uid, gid); 1.256 + } 1.257 ++EXPORT_SYMBOL(security_path_chown); 1.258 + 1.259 + int security_path_chroot(struct path *path) 1.260 + { 1.261 +@@ -498,6 +507,7 @@ int security_inode_readlink(struct dentry *dentry) 1.262 + return 0; 1.263 + return security_ops->inode_readlink(dentry); 1.264 + } 1.265 ++EXPORT_SYMBOL(security_inode_readlink); 1.266 + 1.267 + int security_inode_follow_link(struct dentry *dentry, struct nameidata *nd) 1.268 + { 1.269 +@@ -512,6 +522,7 @@ int security_inode_permission(struct inode *inode, int mask) 1.270 + return 0; 1.271 + return security_ops->inode_permission(inode, mask); 1.272 + } 1.273 ++EXPORT_SYMBOL(security_inode_permission); 1.274 + 1.275 + int security_inode_setattr(struct dentry *dentry, struct iattr *attr) 1.276 + { 1.277 +@@ -611,6 +622,7 @@ int security_file_permission(struct file *file, int mask) 1.278 + 1.279 + return fsnotify_perm(file, mask); 1.280 + } 1.281 ++EXPORT_SYMBOL(security_file_permission); 1.282 + 1.283 + int security_file_alloc(struct file *file) 1.284 + { 1.285 +@@ -638,6 +650,7 @@ int security_file_mmap(struct file *file, unsigned long reqprot, 1.286 + return ret; 1.287 + return ima_file_mmap(file, prot); 1.288 + } 1.289 ++EXPORT_SYMBOL(security_file_mmap); 1.290 + 1.291 + int security_file_mprotect(struct vm_area_struct *vma, unsigned long reqprot, 1.292 + unsigned long prot)