ANDROID: sdcardfs: Switch ->d_inode to d_inode()
authorDaniel Rosenberg <drosen@google.com>
Thu, 5 Jan 2017 22:37:11 +0000 (14:37 -0800)
committerAmit Pundir <amit.pundir@linaro.org>
Fri, 3 Feb 2017 09:34:29 +0000 (15:04 +0530)
Change-Id: I12375cc2d6e82fb8adf0319be971f335f8d7a312
Signed-off-by: Daniel Rosenberg <drosen@google.com>
fs/sdcardfs/derived_perm.c
fs/sdcardfs/file.c
fs/sdcardfs/lookup.c
fs/sdcardfs/main.c

index c77695c8f729cb4a408e01ecb616991786158794..0c1a91f70b40bfc2e16cb3e401a97faaffa03f90 100644 (file)
@@ -49,8 +49,8 @@ void setup_derived_state(struct inode *inode, perm_t perm, userid_t userid,
 /* While renaming, there is a point where we want the path from dentry, but the name from newdentry */
 void get_derived_permission_new(struct dentry *parent, struct dentry *dentry, struct dentry *newdentry)
 {
-       struct sdcardfs_inode_info *info = SDCARDFS_I(dentry->d_inode);
-       struct sdcardfs_inode_info *parent_info= SDCARDFS_I(parent->d_inode);
+       struct sdcardfs_inode_info *info = SDCARDFS_I(d_inode(dentry));
+       struct sdcardfs_inode_info *parent_info= SDCARDFS_I(d_inode(parent));
        appid_t appid;
 
        /* By default, each inode inherits from its parent.
@@ -61,7 +61,7 @@ void get_derived_permission_new(struct dentry *parent, struct dentry *dentry, st
         * stage of each system call by fix_derived_permission(inode).
         */
 
-       inherit_derived_state(parent->d_inode, dentry->d_inode);
+       inherit_derived_state(d_inode(parent), d_inode(dentry));
 
        /* Derive custom permissions based on parent and current node */
        switch (parent_info->perm) {
@@ -134,7 +134,7 @@ void fixup_perms_recursive(struct dentry *dentry, const char* name, size_t len)
        struct sdcardfs_inode_info *info;
        if (!dget(dentry))
                return;
-       if (!dentry->d_inode) {
+       if (!d_inode(dentry)) {
                dput(dentry);
                return;
        }
@@ -189,7 +189,7 @@ inline void update_derived_permission_lock(struct dentry *dentry)
 {
        struct dentry *parent;
 
-       if(!dentry || !dentry->d_inode) {
+       if(!dentry || !d_inode(dentry)) {
                printk(KERN_ERR "sdcardfs: %s: invalid dentry\n", __func__);
                return;
        }
@@ -198,7 +198,7 @@ inline void update_derived_permission_lock(struct dentry *dentry)
         * 2. remove the root dentry update
         */
        if(IS_ROOT(dentry)) {
-               //setup_default_pre_root_state(dentry->d_inode);
+               //setup_default_pre_root_state(d_inode(dentry));
        } else {
                parent = dget_parent(dentry);
                if(parent) {
@@ -213,7 +213,7 @@ int need_graft_path(struct dentry *dentry)
 {
        int ret = 0;
        struct dentry *parent = dget_parent(dentry);
-       struct sdcardfs_inode_info *parent_info= SDCARDFS_I(parent->d_inode);
+       struct sdcardfs_inode_info *parent_info= SDCARDFS_I(d_inode(parent));
        struct sdcardfs_sb_info *sbi = SDCARDFS_SB(dentry->d_sb);
 
        if(parent_info->perm == PERM_ANDROID &&
@@ -272,7 +272,7 @@ int is_base_obbpath(struct dentry *dentry)
 {
        int ret = 0;
        struct dentry *parent = dget_parent(dentry);
-       struct sdcardfs_inode_info *parent_info= SDCARDFS_I(parent->d_inode);
+       struct sdcardfs_inode_info *parent_info= SDCARDFS_I(d_inode(parent));
        struct sdcardfs_sb_info *sbi = SDCARDFS_SB(dentry->d_sb);
 
        spin_lock(&SDCARDFS_D(dentry)->lock);
index c249fa982d3c72706bfb708f56dd3d91409e35af..7750a0472389bef33da10d9db11f91c7430b81dd 100644 (file)
@@ -216,7 +216,7 @@ static int sdcardfs_open(struct inode *inode, struct file *file)
                goto out_err;
        }
 
-       if(!check_caller_access_to_name(parent->d_inode, dentry->d_name.name)) {
+       if(!check_caller_access_to_name(d_inode(parent), dentry->d_name.name)) {
                printk(KERN_INFO "%s: need to check the caller's gid in packages.list\n"
                          "     dentry: %s, task:%s\n",
                                                 __func__, dentry->d_name.name, current->comm);
index 00a711ec2733ecf8f395766d3ca4dc6f4b4ad1b9..e94a65c8bbbd60b8f6b439e36b42fc392aeb1d7e 100644 (file)
@@ -179,7 +179,7 @@ int sdcardfs_interpose(struct dentry *dentry, struct super_block *sb,
        struct inode *lower_inode;
        struct super_block *lower_sb;
 
-       lower_inode = lower_path->dentry->d_inode;
+       lower_inode = d_inode(lower_path->dentry);
        lower_sb = sdcardfs_lower_super(sb);
 
        /* check that the lower file system didn't cross a mount point */
@@ -359,7 +359,7 @@ struct dentry *sdcardfs_lookup(struct inode *dir, struct dentry *dentry,
 
        parent = dget_parent(dentry);
 
-       if(!check_caller_access_to_name(parent->d_inode, dentry->d_name.name)) {
+       if(!check_caller_access_to_name(d_inode(parent), dentry->d_name.name)) {
                ret = ERR_PTR(-EACCES);
                printk(KERN_INFO "%s: need to check the caller's gid in packages.list\n"
                          "     dentry: %s, task:%s\n",
@@ -386,16 +386,16 @@ struct dentry *sdcardfs_lookup(struct inode *dir, struct dentry *dentry,
        }
        if (ret)
                dentry = ret;
-       if (dentry->d_inode) {
-               fsstack_copy_attr_times(dentry->d_inode,
-                                       sdcardfs_lower_inode(dentry->d_inode));
+       if (d_inode(dentry)) {
+               fsstack_copy_attr_times(d_inode(dentry),
+                                       sdcardfs_lower_inode(d_inode(dentry)));
                /* get derived permission */
                get_derived_permission(parent, dentry);
                fixup_tmp_permissions(d_inode(dentry));
        }
        /* update parent directory's atime */
-       fsstack_copy_attr_atime(parent->d_inode,
-                               sdcardfs_lower_inode(parent->d_inode));
+       fsstack_copy_attr_atime(d_inode(parent),
+                               sdcardfs_lower_inode(d_inode(parent)));
 
 out:
        sdcardfs_put_lower_path(parent, &lower_parent_path);
index eec10ccacd9982cc3a117b56892a4ebbe77af158..7a8eae29e44dcfde56ae2971bc08d07776224cac 100644 (file)
@@ -297,7 +297,7 @@ static int sdcardfs_read_super(struct vfsmount *mnt, struct super_block *sb,
        sb->s_op = &sdcardfs_sops;
 
        /* get a new inode and allocate our root dentry */
-       inode = sdcardfs_iget(sb, lower_path.dentry->d_inode, 0);
+       inode = sdcardfs_iget(sb, d_inode(lower_path.dentry), 0);
        if (IS_ERR(inode)) {
                err = PTR_ERR(inode);
                goto out_sput;