Loading Documentation/filesystems/vfs.txt +2 −2 Original line number Original line Diff line number Diff line Loading @@ -333,7 +333,7 @@ struct inode_operations { void * (*follow_link) (struct dentry *, struct nameidata *); void * (*follow_link) (struct dentry *, struct nameidata *); void (*put_link) (struct dentry *, struct nameidata *, void *); void (*put_link) (struct dentry *, struct nameidata *, void *); void (*truncate) (struct inode *); void (*truncate) (struct inode *); int (*permission) (struct inode *, int, unsigned int); int (*permission) (struct inode *, int); int (*check_acl)(struct inode *, int); int (*check_acl)(struct inode *, int); int (*setattr) (struct dentry *, struct iattr *); int (*setattr) (struct dentry *, struct iattr *); int (*getattr) (struct vfsmount *mnt, struct dentry *, struct kstat *); int (*getattr) (struct vfsmount *mnt, struct dentry *, struct kstat *); Loading Loading @@ -423,7 +423,7 @@ otherwise noted. permission: called by the VFS to check for access rights on a POSIX-like permission: called by the VFS to check for access rights on a POSIX-like filesystem. filesystem. May be called in rcu-walk mode (flags & IPERM_FLAG_RCU). If in rcu-walk May be called in rcu-walk mode (mask & MAY_NOT_BLOCK). If in rcu-walk mode, the filesystem must check the permission without blocking or mode, the filesystem must check the permission without blocking or storing to the inode. storing to the inode. Loading fs/afs/internal.h +1 −1 Original line number Original line Diff line number Diff line Loading @@ -627,7 +627,7 @@ extern void afs_clear_permits(struct afs_vnode *); extern void afs_cache_permit(struct afs_vnode *, struct key *, long); extern void afs_cache_permit(struct afs_vnode *, struct key *, long); extern void afs_zap_permits(struct rcu_head *); extern void afs_zap_permits(struct rcu_head *); extern struct key *afs_request_key(struct afs_cell *); extern struct key *afs_request_key(struct afs_cell *); extern int afs_permission(struct inode *, int, unsigned int); extern int afs_permission(struct inode *, int); /* /* * server.c * server.c Loading fs/afs/security.c +2 −2 Original line number Original line Diff line number Diff line Loading @@ -285,14 +285,14 @@ static int afs_check_permit(struct afs_vnode *vnode, struct key *key, * - AFS ACLs are attached to directories only, and a file is controlled by its * - AFS ACLs are attached to directories only, and a file is controlled by its * parent directory's ACL * parent directory's ACL */ */ int afs_permission(struct inode *inode, int mask, unsigned int flags) int afs_permission(struct inode *inode, int mask) { { struct afs_vnode *vnode = AFS_FS_I(inode); struct afs_vnode *vnode = AFS_FS_I(inode); afs_access_t uninitialized_var(access); afs_access_t uninitialized_var(access); struct key *key; struct key *key; int ret; int ret; if (flags & IPERM_FLAG_RCU) if (mask & MAY_NOT_BLOCK) return -ECHILD; return -ECHILD; _enter("{{%x:%u},%lx},%x,", _enter("{{%x:%u},%lx},%x,", Loading fs/bad_inode.c +1 −1 Original line number Original line Diff line number Diff line Loading @@ -229,7 +229,7 @@ static int bad_inode_readlink(struct dentry *dentry, char __user *buffer, return -EIO; return -EIO; } } static int bad_inode_permission(struct inode *inode, int mask, unsigned int flags) static int bad_inode_permission(struct inode *inode, int mask) { { return -EIO; return -EIO; } } Loading fs/btrfs/inode.c +1 −1 Original line number Original line Diff line number Diff line Loading @@ -7331,7 +7331,7 @@ static int btrfs_set_page_dirty(struct page *page) return __set_page_dirty_nobuffers(page); return __set_page_dirty_nobuffers(page); } } static int btrfs_permission(struct inode *inode, int mask, unsigned int flags) static int btrfs_permission(struct inode *inode, int mask) { { struct btrfs_root *root = BTRFS_I(inode)->root; struct btrfs_root *root = BTRFS_I(inode)->root; Loading Loading
Documentation/filesystems/vfs.txt +2 −2 Original line number Original line Diff line number Diff line Loading @@ -333,7 +333,7 @@ struct inode_operations { void * (*follow_link) (struct dentry *, struct nameidata *); void * (*follow_link) (struct dentry *, struct nameidata *); void (*put_link) (struct dentry *, struct nameidata *, void *); void (*put_link) (struct dentry *, struct nameidata *, void *); void (*truncate) (struct inode *); void (*truncate) (struct inode *); int (*permission) (struct inode *, int, unsigned int); int (*permission) (struct inode *, int); int (*check_acl)(struct inode *, int); int (*check_acl)(struct inode *, int); int (*setattr) (struct dentry *, struct iattr *); int (*setattr) (struct dentry *, struct iattr *); int (*getattr) (struct vfsmount *mnt, struct dentry *, struct kstat *); int (*getattr) (struct vfsmount *mnt, struct dentry *, struct kstat *); Loading Loading @@ -423,7 +423,7 @@ otherwise noted. permission: called by the VFS to check for access rights on a POSIX-like permission: called by the VFS to check for access rights on a POSIX-like filesystem. filesystem. May be called in rcu-walk mode (flags & IPERM_FLAG_RCU). If in rcu-walk May be called in rcu-walk mode (mask & MAY_NOT_BLOCK). If in rcu-walk mode, the filesystem must check the permission without blocking or mode, the filesystem must check the permission without blocking or storing to the inode. storing to the inode. Loading
fs/afs/internal.h +1 −1 Original line number Original line Diff line number Diff line Loading @@ -627,7 +627,7 @@ extern void afs_clear_permits(struct afs_vnode *); extern void afs_cache_permit(struct afs_vnode *, struct key *, long); extern void afs_cache_permit(struct afs_vnode *, struct key *, long); extern void afs_zap_permits(struct rcu_head *); extern void afs_zap_permits(struct rcu_head *); extern struct key *afs_request_key(struct afs_cell *); extern struct key *afs_request_key(struct afs_cell *); extern int afs_permission(struct inode *, int, unsigned int); extern int afs_permission(struct inode *, int); /* /* * server.c * server.c Loading
fs/afs/security.c +2 −2 Original line number Original line Diff line number Diff line Loading @@ -285,14 +285,14 @@ static int afs_check_permit(struct afs_vnode *vnode, struct key *key, * - AFS ACLs are attached to directories only, and a file is controlled by its * - AFS ACLs are attached to directories only, and a file is controlled by its * parent directory's ACL * parent directory's ACL */ */ int afs_permission(struct inode *inode, int mask, unsigned int flags) int afs_permission(struct inode *inode, int mask) { { struct afs_vnode *vnode = AFS_FS_I(inode); struct afs_vnode *vnode = AFS_FS_I(inode); afs_access_t uninitialized_var(access); afs_access_t uninitialized_var(access); struct key *key; struct key *key; int ret; int ret; if (flags & IPERM_FLAG_RCU) if (mask & MAY_NOT_BLOCK) return -ECHILD; return -ECHILD; _enter("{{%x:%u},%lx},%x,", _enter("{{%x:%u},%lx},%x,", Loading
fs/bad_inode.c +1 −1 Original line number Original line Diff line number Diff line Loading @@ -229,7 +229,7 @@ static int bad_inode_readlink(struct dentry *dentry, char __user *buffer, return -EIO; return -EIO; } } static int bad_inode_permission(struct inode *inode, int mask, unsigned int flags) static int bad_inode_permission(struct inode *inode, int mask) { { return -EIO; return -EIO; } } Loading
fs/btrfs/inode.c +1 −1 Original line number Original line Diff line number Diff line Loading @@ -7331,7 +7331,7 @@ static int btrfs_set_page_dirty(struct page *page) return __set_page_dirty_nobuffers(page); return __set_page_dirty_nobuffers(page); } } static int btrfs_permission(struct inode *inode, int mask, unsigned int flags) static int btrfs_permission(struct inode *inode, int mask) { { struct btrfs_root *root = BTRFS_I(inode)->root; struct btrfs_root *root = BTRFS_I(inode)->root; Loading