diff options
author | Nick Piggin <npiggin@kernel.dk> | 2011-01-07 01:49:58 -0500 |
---|---|---|
committer | Nick Piggin <npiggin@kernel.dk> | 2011-01-07 01:50:29 -0500 |
commit | b74c79e99389cd79b31fcc08f82c24e492e63c7e (patch) | |
tree | 763c6b412517306670bc625e90035f2d16bb739f /fs/ocfs2/file.c | |
parent | 34286d6662308d82aed891852d04c7c3a2649b16 (diff) |
fs: provide rcu-walk aware permission i_ops
Signed-off-by: Nick Piggin <npiggin@kernel.dk>
Diffstat (limited to 'fs/ocfs2/file.c')
-rw-r--r-- | fs/ocfs2/file.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/fs/ocfs2/file.c b/fs/ocfs2/file.c index f6cba566429d..bdadbae09094 100644 --- a/fs/ocfs2/file.c +++ b/fs/ocfs2/file.c | |||
@@ -1307,10 +1307,13 @@ bail: | |||
1307 | return err; | 1307 | return err; |
1308 | } | 1308 | } |
1309 | 1309 | ||
1310 | int ocfs2_permission(struct inode *inode, int mask) | 1310 | int ocfs2_permission(struct inode *inode, int mask, unsigned int flags) |
1311 | { | 1311 | { |
1312 | int ret; | 1312 | int ret; |
1313 | 1313 | ||
1314 | if (flags & IPERM_FLAG_RCU) | ||
1315 | return -ECHILD; | ||
1316 | |||
1314 | mlog_entry_void(); | 1317 | mlog_entry_void(); |
1315 | 1318 | ||
1316 | ret = ocfs2_inode_lock(inode, NULL, 0); | 1319 | ret = ocfs2_inode_lock(inode, NULL, 0); |
@@ -1320,7 +1323,7 @@ int ocfs2_permission(struct inode *inode, int mask) | |||
1320 | goto out; | 1323 | goto out; |
1321 | } | 1324 | } |
1322 | 1325 | ||
1323 | ret = generic_permission(inode, mask, ocfs2_check_acl); | 1326 | ret = generic_permission(inode, mask, flags, ocfs2_check_acl); |
1324 | 1327 | ||
1325 | ocfs2_inode_unlock(inode, 0); | 1328 | ocfs2_inode_unlock(inode, 0); |
1326 | out: | 1329 | out: |