diff options
| author | Daniel Rosenberg <drosen@google.com> | 2016-10-26 16:33:11 -0700 |
|---|---|---|
| committer | Amit Pundir <amit.pundir@linaro.org> | 2017-02-03 15:04:29 +0530 |
| commit | e5eeaaf5f7319d0db83925c2729dcfb0cf1a4dbc (patch) | |
| tree | 9b24e704355b8878f2a6d483ed1a293cd613be26 /fs/inode.c | |
| parent | db2d40bb63f1906fde48a3b14fc9bb2e609d87db (diff) | |
ANDROID: vfs: Add setattr2 for filesystems with per mount permissions
This allows filesystems to use their mount private data to
influence the permssions they use in setattr2. It has
been separated into a new call to avoid disrupting current
setattr users.
Change-Id: I19959038309284448f1b7f232d579674ef546385
Signed-off-by: Daniel Rosenberg <drosen@google.com>
Diffstat (limited to 'fs/inode.c')
| -rw-r--r-- | fs/inode.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/fs/inode.c b/fs/inode.c index 2c16b758831d..6a7234f0afea 100644 --- a/fs/inode.c +++ b/fs/inode.c @@ -1721,7 +1721,7 @@ int dentry_needs_remove_privs(struct dentry *dentry) } EXPORT_SYMBOL(dentry_needs_remove_privs); -static int __remove_privs(struct dentry *dentry, int kill) +static int __remove_privs(struct vfsmount *mnt, struct dentry *dentry, int kill) { struct iattr newattrs; @@ -1730,7 +1730,7 @@ static int __remove_privs(struct dentry *dentry, int kill) * Note we call this on write, so notify_change will not * encounter any conflicting delegations: */ - return notify_change(dentry, &newattrs, NULL); + return notify_change2(mnt, dentry, &newattrs, NULL); } /* @@ -1752,7 +1752,7 @@ int file_remove_privs(struct file *file) if (kill < 0) return kill; if (kill) - error = __remove_privs(dentry, kill); + error = __remove_privs(file->f_path.mnt, dentry, kill); if (!error) inode_has_no_xattr(inode); |
