1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
|
--- a/file.c
+++ b/file.c
@@ -1026,10 +1026,10 @@
size_t cp, tail = PAGE_SIZE - off;
page = pages[ip];
- cp = copy_page_from_iter_atomic(page, off,
- min(tail, bytes), from);
+ cp = iov_iter_copy_from_user_atomic(page, from, off,
+ min(tail, bytes));
flush_dcache_page(page);
-
+ iov_iter_advance(from, cp);
copied += cp;
bytes -= cp;
if (!bytes || !cp)
--- a/ntfs_fs.h
+++ b/ntfs_fs.h
@@ -809,7 +809,7 @@
/* globals from xattr.c */
#ifdef CONFIG_NTFS3_FS_POSIX_ACL
-struct posix_acl *ntfs_get_acl(struct inode *inode, int type, bool rcu);
+struct posix_acl *ntfs_get_acl(struct inode *inode, int type);
int ntfs_set_acl(struct user_namespace *mnt_userns, struct inode *inode,
struct posix_acl *acl, int type);
int ntfs_init_acl(struct user_namespace *mnt_userns, struct inode *inode,
--- a/xattr.c
+++ b/xattr.c
@@ -535,11 +535,8 @@
/*
* ntfs_get_acl - inode_operations::get_acl
*/
-struct posix_acl *ntfs_get_acl(struct inode *inode, int type, bool rcu)
+struct posix_acl *ntfs_get_acl(struct inode *inode, int type)
{
- if (rcu)
- return ERR_PTR(-ECHILD);
-
/* TODO: init_user_ns? */
return ntfs_get_acl_ex(&init_user_ns, inode, type, 0);
}
@@ -638,7 +635,7 @@
return -EOPNOTSUPP;
}
- acl = ntfs_get_acl(inode, type, false);
+ acl = ntfs_get_acl(inode, type);
if (IS_ERR(acl))
return PTR_ERR(acl);
|