fs: provide rcu-walk aware permission i_ops
[firefly-linux-kernel-4.4.55.git] / fs / logfs / dir.c
index 409dfd65e9a1764029edf55071069e61f447d29d..f9ddf0c388c8b83c50faf148b3b5b1dcc1c7194b 100644 (file)
@@ -555,9 +555,11 @@ static int logfs_symlink(struct inode *dir, struct dentry *dentry,
        return __logfs_create(dir, dentry, inode, target, destlen);
 }
 
-static int logfs_permission(struct inode *inode, int mask)
+static int logfs_permission(struct inode *inode, int mask, unsigned int flags)
 {
-       return generic_permission(inode, mask, NULL);
+       if (flags & IPERM_FLAG_RCU)
+               return -ECHILD;
+       return generic_permission(inode, mask, flags, NULL);
 }
 
 static int logfs_link(struct dentry *old_dentry, struct inode *dir,