summaryrefslogtreecommitdiffstats
path: root/fs/cachefiles/security.c
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2015-04-26 18:48:49 -0400
committerLinus Torvalds <torvalds@linux-foundation.org>2015-04-26 20:22:07 -0400
commit9ec3a646fe09970f801ab15e0f1694060b9f19af (patch)
tree697058ca7e1671eda180a3ccc62445686fbc1a31 /fs/cachefiles/security.c
parentc8b3fd0ce313443731e8fd6d5a541085eb465f99 (diff)
parent3cab989afd8d8d1bc3d99fef0e7ed87c31e7b647 (diff)
Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs
Pull fourth vfs update from Al Viro: "d_inode() annotations from David Howells (sat in for-next since before the beginning of merge window) + four assorted fixes" * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs: RCU pathwalk breakage when running into a symlink overmounting something fix I_DIO_WAKEUP definition direct-io: only inc/dec inode->i_dio_count for file systems fs/9p: fix readdir() VFS: assorted d_backing_inode() annotations VFS: fs/inode.c helpers: d_inode() annotations VFS: fs/cachefiles: d_backing_inode() annotations VFS: fs library helpers: d_inode() annotations VFS: assorted weird filesystems: d_inode() annotations VFS: normal filesystems (and lustre): d_inode() annotations VFS: security/: d_inode() annotations VFS: security/: d_backing_inode() annotations VFS: net/: d_inode() annotations VFS: net/unix: d_backing_inode() annotations VFS: kernel/: d_inode() annotations VFS: audit: d_backing_inode() annotations VFS: Fix up some ->d_inode accesses in the chelsio driver VFS: Cachefiles should perform fs modifications on the top layer only VFS: AF_UNIX sockets should call mknod on the top layer only
Diffstat (limited to 'fs/cachefiles/security.c')
-rw-r--r--fs/cachefiles/security.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/fs/cachefiles/security.c b/fs/cachefiles/security.c
index 396c18ea2764..31bbc0528b11 100644
--- a/fs/cachefiles/security.c
+++ b/fs/cachefiles/security.c
@@ -55,14 +55,14 @@ static int cachefiles_check_cache_dir(struct cachefiles_cache *cache,
55{ 55{
56 int ret; 56 int ret;
57 57
58 ret = security_inode_mkdir(root->d_inode, root, 0); 58 ret = security_inode_mkdir(d_backing_inode(root), root, 0);
59 if (ret < 0) { 59 if (ret < 0) {
60 pr_err("Security denies permission to make dirs: error %d", 60 pr_err("Security denies permission to make dirs: error %d",
61 ret); 61 ret);
62 return ret; 62 return ret;
63 } 63 }
64 64
65 ret = security_inode_create(root->d_inode, root, 0); 65 ret = security_inode_create(d_backing_inode(root), root, 0);
66 if (ret < 0) 66 if (ret < 0)
67 pr_err("Security denies permission to create files: error %d", 67 pr_err("Security denies permission to create files: error %d",
68 ret); 68 ret);
@@ -95,7 +95,7 @@ int cachefiles_determine_cache_security(struct cachefiles_cache *cache,
95 95
96 /* use the cache root dir's security context as the basis with 96 /* use the cache root dir's security context as the basis with
97 * which create files */ 97 * which create files */
98 ret = set_create_files_as(new, root->d_inode); 98 ret = set_create_files_as(new, d_backing_inode(root));
99 if (ret < 0) { 99 if (ret < 0) {
100 abort_creds(new); 100 abort_creds(new);
101 cachefiles_begin_secure(cache, _saved_cred); 101 cachefiles_begin_secure(cache, _saved_cred);