ANDROID: sdcardfs: Switch ->d_inode to d_inode()
Change-Id: I12375cc2d6e82fb8adf0319be971f335f8d7a312 Signed-off-by: Daniel Rosenberg <drosen@google.com>
This commit is contained in:
parent
6c8d8dcbb2
commit
bc75026900
4 changed files with 17 additions and 17 deletions
|
@ -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;
|
||||
}
|
||||
|
@ -195,7 +195,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;
|
||||
}
|
||||
|
@ -204,7 +204,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) {
|
||||
|
@ -219,7 +219,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 &&
|
||||
|
@ -278,7 +278,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);
|
||||
|
|
|
@ -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);
|
||||
|
|
|
@ -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);
|
||||
|
|
|
@ -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;
|
||||
|
|
Loading…
Reference in a new issue