vfs: export __inode_permission() to modules
authorMiklos Szeredi <mszeredi@suse.cz>
Thu, 23 Oct 2014 22:14:35 +0000 (00:14 +0200)
committerMiklos Szeredi <mszeredi@suse.cz>
Thu, 23 Oct 2014 22:14:35 +0000 (00:14 +0200)
We need to be able to check inode permissions (but not filesystem implied
permissions) for stackable filesystems.  Expose this interface for overlayfs.

Signed-off-by: Miklos Szeredi <mszeredi@suse.cz>
fs/internal.h
fs/namei.c
include/linux/fs.h

index 0f0626a6997cdbfb12be51910d922b4d3ac6d868..757ba2abf21e6c205867960d5fa2ee3b2f77d46f 100644 (file)
@@ -47,7 +47,6 @@ extern void __init chrdev_init(void);
 /*
  * namei.c
  */
-extern int __inode_permission(struct inode *, int);
 extern int user_path_mountpoint_at(int, const char __user *, unsigned int, struct path *);
 extern int vfs_path_lookup(struct dentry *, struct vfsmount *,
                           const char *, unsigned int, struct path *);
index 75306b3c95261785d7cd2c7b4bdbab26c0aefb98..d944f6db9b07bf5bcee030410796211f2257e9b7 100644 (file)
@@ -416,6 +416,7 @@ int __inode_permission(struct inode *inode, int mask)
 
        return security_inode_permission(inode, mask);
 }
+EXPORT_SYMBOL(__inode_permission);
 
 /**
  * sb_permission - Check superblock-level permissions
index 10ed65b2c31de7d006929cbc42b2d4cc44d37461..5419df70a835f17dcc3f2b6394a81ee4a3967ab4 100644 (file)
@@ -2257,6 +2257,7 @@ extern sector_t bmap(struct inode *, sector_t);
 #endif
 extern int notify_change(struct dentry *, struct iattr *, struct inode **);
 extern int inode_permission(struct inode *, int);
+extern int __inode_permission(struct inode *, int);
 extern int generic_permission(struct inode *, int);
 
 static inline bool execute_ok(struct inode *inode)