FROMLIST: drm/bridge: analogix_dp: Don't read EDID if panel present
[firefly-linux-kernel-4.4.55.git] / fs / sdcardfs / file.c
index f9c5eaafc619841df222a64057b2d3e984699aa3..23f8cd7f8877dfd679fd83ce7f6ad1e26ff24fa0 100644 (file)
@@ -209,7 +209,6 @@ static int sdcardfs_open(struct inode *inode, struct file *file)
        struct dentry *parent = dget_parent(dentry);
        struct sdcardfs_sb_info *sbi = SDCARDFS_SB(dentry->d_sb);
        const struct cred *saved_cred = NULL;
-       int has_rw;
 
        /* don't open unhashed/deleted files */
        if (d_unhashed(dentry)) {
@@ -217,11 +216,7 @@ static int sdcardfs_open(struct inode *inode, struct file *file)
                goto out_err;
        }
 
-       has_rw = get_caller_has_rw_locked(sbi->pkgl_id, sbi->options.derive);
-
-       if(!check_caller_access_to_name(parent->d_inode, dentry->d_name.name,
-                               sbi->options.derive,
-                               open_flags_to_access_mode(file->f_flags), has_rw)) {
+       if(!check_caller_access_to_name(d_inode(parent), &dentry->d_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);
@@ -230,7 +225,7 @@ static int sdcardfs_open(struct inode *inode, struct file *file)
        }
 
        /* save current_cred and override it */
-       OVERRIDE_CRED(sbi, saved_cred);
+       OVERRIDE_CRED(sbi, saved_cred, SDCARDFS_I(inode));
 
        file->private_data =
                kzalloc(sizeof(struct sdcardfs_file_info), GFP_KERNEL);
@@ -257,8 +252,7 @@ static int sdcardfs_open(struct inode *inode, struct file *file)
        if (err)
                kfree(SDCARDFS_F(file));
        else {
-               fsstack_copy_attr_all(inode, sdcardfs_lower_inode(inode));
-               fix_derived_permission(inode);
+               sdcardfs_copy_and_fix_attrs(inode, sdcardfs_lower_inode(inode));
        }
 
 out_revert_cred: