Re: [PATCH 0/2] fs: supply inode uid/gid setting interface
On 2013/8/23 12:10, Greg KH wrote: > On Fri, Aug 23, 2013 at 10:48:36AM +0800, Rui Xiang wrote: >> This patchset implements an accessor functions to set uid/gid >> in inode struct. Just finish code clean up. > > Why? > It can introduce a new function to reduce some codes. Just clean up. Thanks. -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
[PATCH 2/2] fs: use inode_set_user to set uid/gid of inode
Use the new interface to set i_uid/i_gid in inode struct. Signed-off-by: Rui Xiang --- arch/ia64/kernel/perfmon.c| 3 +-- arch/powerpc/platforms/cell/spufs/inode.c | 3 +-- arch/s390/hypfs/inode.c | 3 +-- drivers/infiniband/hw/qib/qib_fs.c| 3 +-- drivers/usb/gadget/f_fs.c | 3 +-- drivers/usb/gadget/inode.c| 5 +++-- fs/9p/vfs_inode.c | 6 ++ fs/adfs/inode.c | 3 +-- fs/affs/inode.c | 6 ++ fs/afs/inode.c| 6 ++ fs/anon_inodes.c | 3 +-- fs/autofs4/inode.c| 4 ++-- fs/befs/linuxvfs.c| 8 fs/ceph/caps.c| 5 +++-- fs/ceph/inode.c | 8 fs/cifs/inode.c | 6 ++ fs/configfs/inode.c | 3 +-- fs/debugfs/inode.c| 3 +-- fs/devpts/inode.c | 7 +++ fs/ext2/ialloc.c | 3 +-- fs/ext3/ialloc.c | 3 +-- fs/ext4/ialloc.c | 3 +-- fs/fat/inode.c| 6 ++ fs/fuse/control.c | 3 +-- fs/fuse/inode.c | 4 ++-- fs/hfs/inode.c| 6 ++ fs/hfsplus/inode.c| 3 +-- fs/hpfs/inode.c | 3 +-- fs/hpfs/namei.c | 12 fs/hugetlbfs/inode.c | 3 +-- fs/isofs/inode.c | 3 +-- fs/isofs/rock.c | 3 +-- fs/ncpfs/inode.c | 3 +-- fs/nfs/inode.c| 4 ++-- fs/ntfs/inode.c | 12 fs/ntfs/mft.c | 3 +-- fs/ntfs/super.c | 3 +-- fs/ocfs2/refcounttree.c | 3 +-- fs/omfs/inode.c | 3 +-- fs/pipe.c | 3 +-- fs/proc/base.c| 15 +-- fs/proc/fd.c | 8 fs/proc/inode.c | 3 +-- fs/proc/self.c| 3 +-- fs/stack.c| 3 +-- fs/sysfs/inode.c | 3 +-- fs/xfs/xfs_iops.c | 4 ++-- ipc/mqueue.c | 3 +-- kernel/cgroup.c | 3 +-- mm/shmem.c| 3 +-- net/socket.c | 3 +-- 51 files changed, 86 insertions(+), 142 deletions(-) diff --git a/arch/ia64/kernel/perfmon.c b/arch/ia64/kernel/perfmon.c index 5a9ff1c..73e1e55 100644 --- a/arch/ia64/kernel/perfmon.c +++ b/arch/ia64/kernel/perfmon.c @@ -2202,8 +2202,7 @@ pfm_alloc_file(pfm_context_t *ctx) DPRINT(("new inode ino=%ld @%p\n", inode->i_ino, inode)); inode->i_mode = S_IFCHR|S_IRUGO; - inode->i_uid = current_fsuid(); - inode->i_gid = current_fsgid(); + inode_set_user(inode, current_fsuid(), current_fsgid()); /* * allocate a new dcache entry diff --git a/arch/powerpc/platforms/cell/spufs/inode.c b/arch/powerpc/platforms/cell/spufs/inode.c index 87ba7cf..4580c9b 100644 --- a/arch/powerpc/platforms/cell/spufs/inode.c +++ b/arch/powerpc/platforms/cell/spufs/inode.c @@ -101,8 +101,7 @@ spufs_new_inode(struct super_block *sb, umode_t mode) inode->i_ino = get_next_ino(); inode->i_mode = mode; - inode->i_uid = current_fsuid(); - inode->i_gid = current_fsgid(); + inode_set_user(inode, current_fsuid(), current_fsgid()); inode->i_atime = inode->i_mtime = inode->i_ctime = CURRENT_TIME; out: return inode; diff --git a/arch/s390/hypfs/inode.c b/arch/s390/hypfs/inode.c index 7a539f4..742e430 100644 --- a/arch/s390/hypfs/inode.c +++ b/arch/s390/hypfs/inode.c @@ -103,8 +103,7 @@ static struct inode *hypfs_make_inode(struct super_block *sb, umode_t mode) struct hypfs_sb_info *hypfs_info = sb->s_fs_info; ret->i_ino = get_next_ino(); ret->i_mode = mode; - ret->i_uid = hypfs_info->uid; - ret->i_gid = hypfs_info->gid; + inode_set_user(ret, hypfs_info->uid, hypfs_info->gid); ret->i_atime = ret->i_mtime = ret->i_ctime = CURRENT_TIME; if (S_ISDIR(mode)) set_nlink(ret, 2); diff --git a/drivers/infiniband/hw/qib/qib_fs.c b/drivers/infiniband/hw/qib/qib_fs.c index f247fc6e..6683837 100644 --- a/drivers/infiniband/hw/qib/qib_fs.c +++ b/drivers/infiniband/hw/qi
[PATCH 1/2] fs: implement inode uid/gid setting function
Supply a interface inode_set_user to set uid/gid of inode structs. Signed-off-by: Rui Xiang --- fs/inode.c | 7 +++ include/linux/fs.h | 1 + 2 files changed, 8 insertions(+) diff --git a/fs/inode.c b/fs/inode.c index e315c0a..3f90499 100644 --- a/fs/inode.c +++ b/fs/inode.c @@ -343,6 +343,13 @@ void inc_nlink(struct inode *inode) } EXPORT_SYMBOL(inc_nlink); +void inode_set_user(struct inode *inode, kuid_t uid, kgid_t gid) +{ + inode->i_uid = uid; + inode->i_gid = gid; +} +EXPORT_SYMBOL(inode_set_user); + void address_space_init_once(struct address_space *mapping) { memset(mapping, 0, sizeof(*mapping)); diff --git a/include/linux/fs.h b/include/linux/fs.h index 729e81b..36ac51b 100644 --- a/include/linux/fs.h +++ b/include/linux/fs.h @@ -2619,6 +2619,7 @@ void __inode_sub_bytes(struct inode *inode, loff_t bytes); void inode_sub_bytes(struct inode *inode, loff_t bytes); loff_t inode_get_bytes(struct inode *inode); void inode_set_bytes(struct inode *inode, loff_t bytes); +void inode_set_user(struct inode *inode, kuid_t uid, kgid_t gid); extern int vfs_readdir(struct file *, filldir_t, void *); extern int iterate_dir(struct file *, struct dir_context *); -- 1.8.2.2 -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
[PATCH 0/2] fs: supply inode uid/gid setting interface
This patchset implements an accessor functions to set uid/gid in inode struct. Just finish code clean up. Rui Xiang (2): fs: implement inode uid/gid setting function fs: use inode_set_user to set uid/gid of inode arch/ia64/kernel/perfmon.c| 3 +-- arch/powerpc/platforms/cell/spufs/inode.c | 3 +-- arch/s390/hypfs/inode.c | 3 +-- drivers/infiniband/hw/qib/qib_fs.c| 3 +-- drivers/usb/gadget/f_fs.c | 3 +-- drivers/usb/gadget/inode.c| 5 +++-- fs/9p/vfs_inode.c | 6 ++ fs/adfs/inode.c | 3 +-- fs/affs/inode.c | 6 ++ fs/afs/inode.c| 6 ++ fs/anon_inodes.c | 3 +-- fs/autofs4/inode.c| 4 ++-- fs/befs/linuxvfs.c| 8 fs/ceph/caps.c| 5 +++-- fs/ceph/inode.c | 8 fs/cifs/inode.c | 6 ++ fs/configfs/inode.c | 3 +-- fs/debugfs/inode.c| 3 +-- fs/devpts/inode.c | 7 +++ fs/ext2/ialloc.c | 3 +-- fs/ext3/ialloc.c | 3 +-- fs/ext4/ialloc.c | 3 +-- fs/fat/inode.c| 6 ++ fs/fuse/control.c | 3 +-- fs/fuse/inode.c | 4 ++-- fs/hfs/inode.c| 6 ++ fs/hfsplus/inode.c| 3 +-- fs/hpfs/inode.c | 3 +-- fs/hpfs/namei.c | 12 fs/hugetlbfs/inode.c | 3 +-- fs/inode.c| 7 +++ fs/isofs/inode.c | 3 +-- fs/isofs/rock.c | 3 +-- fs/ncpfs/inode.c | 3 +-- fs/nfs/inode.c| 4 ++-- fs/ntfs/inode.c | 12 fs/ntfs/mft.c | 3 +-- fs/ntfs/super.c | 3 +-- fs/ocfs2/refcounttree.c | 3 +-- fs/omfs/inode.c | 3 +-- fs/pipe.c | 3 +-- fs/proc/base.c| 15 +-- fs/proc/fd.c | 8 fs/proc/inode.c | 3 +-- fs/proc/self.c| 3 +-- fs/stack.c| 3 +-- fs/sysfs/inode.c | 3 +-- fs/xfs/xfs_iops.c | 4 ++-- include/linux/fs.h| 1 + ipc/mqueue.c | 3 +-- kernel/cgroup.c | 3 +-- mm/shmem.c| 3 +-- net/socket.c | 3 +-- 53 files changed, 94 insertions(+), 142 deletions(-) -- 1.8.2.2 -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html