1 |
jlec 12/01/05 16:17:27 |
2 |
|
3 |
Added: aufs3-base-x-rcN.patch |
4 |
aufs3-fix-export-__devcgroup_inode_permission.patch |
5 |
aufs3-standalone-x-rcN.patch |
6 |
Log: |
7 |
Version Bump |
8 |
|
9 |
(Portage version: 2.2.0_alpha84/cvs/Linux x86_64) |
10 |
|
11 |
Revision Changes Path |
12 |
1.1 sys-fs/aufs3/files/aufs3-base-x-rcN.patch |
13 |
|
14 |
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/sys-fs/aufs3/files/aufs3-base-x-rcN.patch?rev=1.1&view=markup |
15 |
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/sys-fs/aufs3/files/aufs3-base-x-rcN.patch?rev=1.1&content-type=text/plain |
16 |
|
17 |
Index: aufs3-base-x-rcN.patch |
18 |
=================================================================== |
19 |
aufs3.x-rcN base patch |
20 |
|
21 |
diff --git a/fs/namei.c b/fs/namei.c |
22 |
index 5008f01..4cc94cf 100644 |
23 |
--- a/fs/namei.c |
24 |
+++ b/fs/namei.c |
25 |
@@ -1753,7 +1753,7 @@ static struct dentry *__lookup_hash(struct qstr *name, |
26 |
* needs parent already locked. Doesn't follow mounts. |
27 |
* SMP-safe. |
28 |
*/ |
29 |
-static struct dentry *lookup_hash(struct nameidata *nd) |
30 |
+struct dentry *lookup_hash(struct nameidata *nd) |
31 |
{ |
32 |
return __lookup_hash(&nd->last, nd->path.dentry, nd); |
33 |
} |
34 |
diff --git a/fs/splice.c b/fs/splice.c |
35 |
index fa2defa..e3569b0 100644 |
36 |
--- a/fs/splice.c |
37 |
+++ b/fs/splice.c |
38 |
@@ -1085,8 +1085,8 @@ EXPORT_SYMBOL(generic_splice_sendpage); |
39 |
/* |
40 |
* Attempt to initiate a splice from pipe to file. |
41 |
*/ |
42 |
-static long do_splice_from(struct pipe_inode_info *pipe, struct file *out, |
43 |
- loff_t *ppos, size_t len, unsigned int flags) |
44 |
+long do_splice_from(struct pipe_inode_info *pipe, struct file *out, |
45 |
+ loff_t *ppos, size_t len, unsigned int flags) |
46 |
{ |
47 |
ssize_t (*splice_write)(struct pipe_inode_info *, struct file *, |
48 |
loff_t *, size_t, unsigned int); |
49 |
@@ -1113,9 +1113,9 @@ static long do_splice_from(struct pipe_inode_info *pipe, struct file *out, |
50 |
/* |
51 |
* Attempt to initiate a splice from a file to a pipe. |
52 |
*/ |
53 |
-static long do_splice_to(struct file *in, loff_t *ppos, |
54 |
- struct pipe_inode_info *pipe, size_t len, |
55 |
- unsigned int flags) |
56 |
+long do_splice_to(struct file *in, loff_t *ppos, |
57 |
+ struct pipe_inode_info *pipe, size_t len, |
58 |
+ unsigned int flags) |
59 |
{ |
60 |
ssize_t (*splice_read)(struct file *, loff_t *, |
61 |
struct pipe_inode_info *, size_t, unsigned int); |
62 |
diff --git a/include/linux/namei.h b/include/linux/namei.h |
63 |
index ffc0213..ef35a31 100644 |
64 |
--- a/include/linux/namei.h |
65 |
+++ b/include/linux/namei.h |
66 |
@@ -85,6 +85,7 @@ extern int vfs_path_lookup(struct dentry *, struct vfsmount *, |
67 |
extern struct file *lookup_instantiate_filp(struct nameidata *nd, struct dentry *dentry, |
68 |
int (*open)(struct inode *, struct file *)); |
69 |
|
70 |
+extern struct dentry *lookup_hash(struct nameidata *nd); |
71 |
extern struct dentry *lookup_one_len(const char *, struct dentry *, int); |
72 |
|
73 |
extern int follow_down_one(struct path *); |
74 |
diff --git a/include/linux/splice.h b/include/linux/splice.h |
75 |
index 26e5b61..3ffef2f 100644 |
76 |
--- a/include/linux/splice.h |
77 |
+++ b/include/linux/splice.h |
78 |
@@ -91,4 +91,10 @@ extern void splice_shrink_spd(struct pipe_inode_info *, |
79 |
extern void spd_release_page(struct splice_pipe_desc *, unsigned int); |
80 |
|
81 |
extern const struct pipe_buf_operations page_cache_pipe_buf_ops; |
82 |
+ |
83 |
+extern long do_splice_from(struct pipe_inode_info *pipe, struct file *out, |
84 |
+ loff_t *ppos, size_t len, unsigned int flags); |
85 |
+extern long do_splice_to(struct file *in, loff_t *ppos, |
86 |
+ struct pipe_inode_info *pipe, size_t len, |
87 |
+ unsigned int flags); |
88 |
#endif |
89 |
|
90 |
|
91 |
|
92 |
1.1 sys-fs/aufs3/files/aufs3-fix-export-__devcgroup_inode_permission.patch |
93 |
|
94 |
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/sys-fs/aufs3/files/aufs3-fix-export-__devcgroup_inode_permission.patch?rev=1.1&view=markup |
95 |
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/sys-fs/aufs3/files/aufs3-fix-export-__devcgroup_inode_permission.patch?rev=1.1&content-type=text/plain |
96 |
|
97 |
Index: aufs3-fix-export-__devcgroup_inode_permission.patch |
98 |
=================================================================== |
99 |
--- a/security/device_cgroup.c |
100 |
+++ b/security/device_cgroup.c |
101 |
@@ -13,6 +13,7 @@ |
102 |
#include <linux/slab.h> |
103 |
#include <linux/rcupdate.h> |
104 |
#include <linux/mutex.h> |
105 |
+#include <linux/export.h> |
106 |
|
107 |
#define ACC_MKNOD 1 |
108 |
#define ACC_READ 2 |
109 |
|
110 |
|
111 |
|
112 |
1.1 sys-fs/aufs3/files/aufs3-standalone-x-rcN.patch |
113 |
|
114 |
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/sys-fs/aufs3/files/aufs3-standalone-x-rcN.patch?rev=1.1&view=markup |
115 |
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/sys-fs/aufs3/files/aufs3-standalone-x-rcN.patch?rev=1.1&content-type=text/plain |
116 |
|
117 |
Index: aufs3-standalone-x-rcN.patch |
118 |
=================================================================== |
119 |
aufs3.x-rcN standalone patch |
120 |
|
121 |
diff --git a/fs/file_table.c b/fs/file_table.c |
122 |
index c322794..2aad244 100644 |
123 |
--- a/fs/file_table.c |
124 |
+++ b/fs/file_table.c |
125 |
@@ -443,6 +443,8 @@ void file_sb_list_del(struct file *file) |
126 |
} |
127 |
} |
128 |
|
129 |
+EXPORT_SYMBOL(file_sb_list_del); |
130 |
+ |
131 |
#ifdef CONFIG_SMP |
132 |
|
133 |
/* |
134 |
diff --git a/fs/inode.c b/fs/inode.c |
135 |
index ee4e66b..728042b 100644 |
136 |
--- a/fs/inode.c |
137 |
+++ b/fs/inode.c |
138 |
@@ -65,6 +65,7 @@ static struct hlist_head *inode_hashtable __read_mostly; |
139 |
static __cacheline_aligned_in_smp DEFINE_SPINLOCK(inode_hash_lock); |
140 |
|
141 |
__cacheline_aligned_in_smp DEFINE_SPINLOCK(inode_sb_list_lock); |
142 |
+EXPORT_SYMBOL(inode_sb_list_lock); |
143 |
|
144 |
/* |
145 |
* Empty aops. Can be used for the cases where the user does not |
146 |
diff --git a/fs/namei.c b/fs/namei.c |
147 |
index 4cc94cf..af19e30 100644 |
148 |
--- a/fs/namei.c |
149 |
+++ b/fs/namei.c |
150 |
@@ -1757,6 +1757,7 @@ struct dentry *lookup_hash(struct nameidata *nd) |
151 |
{ |
152 |
return __lookup_hash(&nd->last, nd->path.dentry, nd); |
153 |
} |
154 |
+EXPORT_SYMBOL(lookup_hash); |
155 |
|
156 |
/** |
157 |
* lookup_one_len - filesystem helper to lookup single pathname component |
158 |
diff --git a/fs/namespace.c b/fs/namespace.c |
159 |
index 6d3a196..d832654 100644 |
160 |
--- a/fs/namespace.c |
161 |
+++ b/fs/namespace.c |
162 |
@@ -1509,6 +1509,7 @@ int iterate_mounts(int (*f)(struct vfsmount *, void *), void *arg, |
163 |
} |
164 |
return 0; |
165 |
} |
166 |
+EXPORT_SYMBOL(iterate_mounts); |
167 |
|
168 |
static void cleanup_group_ids(struct vfsmount *mnt, struct vfsmount *end) |
169 |
{ |
170 |
diff --git a/fs/notify/group.c b/fs/notify/group.c |
171 |
index 63fc294..6f4adca 100644 |
172 |
--- a/fs/notify/group.c |
173 |
+++ b/fs/notify/group.c |
174 |
@@ -22,6 +22,7 @@ |
175 |
#include <linux/srcu.h> |
176 |
#include <linux/rculist.h> |
177 |
#include <linux/wait.h> |
178 |
+#include <linux/module.h> |
179 |
|
180 |
#include <linux/fsnotify_backend.h> |
181 |
#include "fsnotify.h" |
182 |
@@ -70,6 +71,7 @@ void fsnotify_put_group(struct fsnotify_group *group) |
183 |
if (atomic_dec_and_test(&group->refcnt)) |
184 |
fsnotify_destroy_group(group); |
185 |
} |
186 |
+EXPORT_SYMBOL(fsnotify_put_group); |
187 |
|
188 |
/* |
189 |
* Create a new fsnotify_group and hold a reference for the group returned. |
190 |
@@ -102,3 +104,4 @@ struct fsnotify_group *fsnotify_alloc_group(const struct fsnotify_ops *ops) |
191 |
|
192 |
return group; |
193 |
} |
194 |
+EXPORT_SYMBOL(fsnotify_alloc_group); |
195 |
diff --git a/fs/notify/mark.c b/fs/notify/mark.c |
196 |
index e14587d..be6533b 100644 |
197 |
--- a/fs/notify/mark.c |
198 |
+++ b/fs/notify/mark.c |
199 |
@@ -112,6 +112,7 @@ void fsnotify_put_mark(struct fsnotify_mark *mark) |
200 |
if (atomic_dec_and_test(&mark->refcnt)) |
201 |
mark->free_mark(mark); |
202 |
} |
203 |
+EXPORT_SYMBOL(fsnotify_put_mark); |
204 |
|
205 |
/* |
206 |
* Any time a mark is getting freed we end up here. |
207 |
@@ -189,6 +190,7 @@ void fsnotify_destroy_mark(struct fsnotify_mark *mark) |
208 |
if (unlikely(atomic_dec_and_test(&group->num_marks))) |
209 |
fsnotify_final_destroy_group(group); |
210 |
} |
211 |
+EXPORT_SYMBOL(fsnotify_destroy_mark); |
212 |
|
213 |
void fsnotify_set_mark_mask_locked(struct fsnotify_mark *mark, __u32 mask) |
214 |
{ |
215 |
@@ -276,6 +278,7 @@ err: |
216 |
|
217 |
return ret; |
218 |
} |
219 |
+EXPORT_SYMBOL(fsnotify_add_mark); |
220 |
|
221 |
/* |
222 |
* clear any marks in a group in which mark->flags & flags is true |
223 |
@@ -331,6 +334,7 @@ void fsnotify_init_mark(struct fsnotify_mark *mark, |
224 |
atomic_set(&mark->refcnt, 1); |
225 |
mark->free_mark = free_mark; |
226 |
} |
227 |
+EXPORT_SYMBOL(fsnotify_init_mark); |
228 |
|
229 |
static int fsnotify_mark_destroy(void *ignored) |
230 |
{ |
231 |
diff --git a/fs/open.c b/fs/open.c |
232 |
index 22c41b5..33b4033 100644 |
233 |
--- a/fs/open.c |
234 |
+++ b/fs/open.c |
235 |
@@ -60,6 +60,7 @@ int do_truncate(struct dentry *dentry, loff_t length, unsigned int time_attrs, |
236 |
mutex_unlock(&dentry->d_inode->i_mutex); |
237 |
return ret; |
238 |
} |
239 |
+EXPORT_SYMBOL(do_truncate); |
240 |
|
241 |
static long do_sys_truncate(const char __user *pathname, loff_t length) |
242 |
{ |
243 |
diff --git a/fs/splice.c b/fs/splice.c |
244 |
index e3569b0..9dc07b7 100644 |
245 |
--- a/fs/splice.c |
246 |
+++ b/fs/splice.c |
247 |
@@ -1109,6 +1109,7 @@ long do_splice_from(struct pipe_inode_info *pipe, struct file *out, |
248 |
|
249 |
return splice_write(pipe, out, ppos, len, flags); |
250 |
} |
251 |
+EXPORT_SYMBOL(do_splice_from); |
252 |
|
253 |
/* |
254 |
* Attempt to initiate a splice from a file to a pipe. |
255 |
@@ -1135,6 +1136,7 @@ long do_splice_to(struct file *in, loff_t *ppos, |
256 |
|
257 |
return splice_read(in, ppos, pipe, len, flags); |
258 |
} |
259 |
+EXPORT_SYMBOL(do_splice_to); |
260 |
|
261 |
/** |
262 |
* splice_direct_to_actor - splices data directly between two non-pipes |
263 |
diff --git a/security/commoncap.c b/security/commoncap.c |
264 |
index ee4f848..611fd70 100644 |
265 |
--- a/security/commoncap.c |
266 |
+++ b/security/commoncap.c |
267 |
@@ -975,3 +975,4 @@ int cap_file_mmap(struct file *file, unsigned long reqprot, |
268 |
} |
269 |
return ret; |
270 |
} |
271 |
+EXPORT_SYMBOL(cap_file_mmap); |
272 |
diff --git a/security/device_cgroup.c b/security/device_cgroup.c |
273 |
index 4450fbe..2c437e5 100644 |
274 |
--- a/security/device_cgroup.c |
275 |
+++ b/security/device_cgroup.c |
276 |
@@ -500,6 +500,7 @@ found: |
277 |
|
278 |
return -EPERM; |
279 |
} |
280 |
+EXPORT_SYMBOL(__devcgroup_inode_permission); |
281 |
|
282 |
int devcgroup_inode_mknod(int mode, dev_t dev) |
283 |
{ |
284 |
diff --git a/security/security.c b/security/security.c |
285 |
index 0c6cc69..d58ba1b 100644 |
286 |
--- a/security/security.c |
287 |
+++ b/security/security.c |
288 |
@@ -411,6 +411,7 @@ int security_path_rmdir(struct path *dir, struct dentry *dentry) |
289 |
return 0; |
290 |
return security_ops->path_rmdir(dir, dentry); |
291 |
} |
292 |
+EXPORT_SYMBOL(security_path_rmdir); |
293 |
|
294 |
int security_path_unlink(struct path *dir, struct dentry *dentry) |
295 |
{ |
296 |
@@ -427,6 +428,7 @@ int security_path_symlink(struct path *dir, struct dentry *dentry, |
297 |
return 0; |
298 |
return security_ops->path_symlink(dir, dentry, old_name); |
299 |
} |
300 |
+EXPORT_SYMBOL(security_path_symlink); |
301 |
|
302 |
int security_path_link(struct dentry *old_dentry, struct path *new_dir, |
303 |
struct dentry *new_dentry) |
304 |
@@ -435,6 +437,7 @@ int security_path_link(struct dentry *old_dentry, struct path *new_dir, |
305 |
return 0; |
306 |
return security_ops->path_link(old_dentry, new_dir, new_dentry); |
307 |
} |
308 |
+EXPORT_SYMBOL(security_path_link); |
309 |
|
310 |
int security_path_rename(struct path *old_dir, struct dentry *old_dentry, |
311 |
struct path *new_dir, struct dentry *new_dentry) |
312 |
@@ -453,6 +456,7 @@ int security_path_truncate(struct path *path) |
313 |
return 0; |
314 |
return security_ops->path_truncate(path); |
315 |
} |
316 |
+EXPORT_SYMBOL(security_path_truncate); |
317 |
|
318 |
int security_path_chmod(struct dentry *dentry, struct vfsmount *mnt, |
319 |
mode_t mode) |
320 |
@@ -461,6 +465,7 @@ int security_path_chmod(struct dentry *dentry, struct vfsmount *mnt, |
321 |
return 0; |
322 |
return security_ops->path_chmod(dentry, mnt, mode); |
323 |
} |
324 |
+EXPORT_SYMBOL(security_path_chmod); |
325 |
|
326 |
int security_path_chown(struct path *path, uid_t uid, gid_t gid) |
327 |
{ |
328 |
@@ -468,6 +473,7 @@ int security_path_chown(struct path *path, uid_t uid, gid_t gid) |
329 |
return 0; |
330 |
return security_ops->path_chown(path, uid, gid); |
331 |
} |
332 |
+EXPORT_SYMBOL(security_path_chown); |
333 |
|
334 |
int security_path_chroot(struct path *path) |
335 |
{ |
336 |
@@ -544,6 +550,7 @@ int security_inode_readlink(struct dentry *dentry) |
337 |
return 0; |
338 |
return security_ops->inode_readlink(dentry); |
339 |
} |
340 |
+EXPORT_SYMBOL(security_inode_readlink); |
341 |
|
342 |
int security_inode_follow_link(struct dentry *dentry, struct nameidata *nd) |
343 |
{ |
344 |
@@ -558,6 +565,7 @@ int security_inode_permission(struct inode *inode, int mask) |
345 |
return 0; |
346 |
return security_ops->inode_permission(inode, mask); |
347 |
} |
348 |
+EXPORT_SYMBOL(security_inode_permission); |
349 |
|
350 |
int security_inode_setattr(struct dentry *dentry, struct iattr *attr) |
351 |
{ |
352 |
@@ -673,6 +681,7 @@ int security_file_permission(struct file *file, int mask) |
353 |
|
354 |
return fsnotify_perm(file, mask); |
355 |
} |
356 |
+EXPORT_SYMBOL(security_file_permission); |
357 |
|
358 |
int security_file_alloc(struct file *file) |
359 |
{ |
360 |
@@ -700,6 +709,7 @@ int security_file_mmap(struct file *file, unsigned long reqprot, |
361 |
return ret; |
362 |
return ima_file_mmap(file, prot); |
363 |
} |
364 |
+EXPORT_SYMBOL(security_file_mmap); |
365 |
|
366 |
int security_file_mprotect(struct vm_area_struct *vma, unsigned long reqprot, |
367 |
unsigned long prot) |