Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 57968707 authored by Daniel Rosenberg's avatar Daniel Rosenberg
Browse files

Revert "Revert "Android: sdcardfs: Don't do d_add for lower fs""



This reverts commit ffa75fdb9c408f49b9622b6d55752ed99ff61488.

Turns out we just needed the right hash.

Signed-off-by: default avatarDaniel Rosenberg <drosen@google.com>
Bug: 37231161
Change-Id: I6a6de7f7df99ad42b20fa062913b219f64020c31
parent cac7ba91
Loading
Loading
Loading
Loading
+5 −7
Original line number Diff line number Diff line
@@ -373,17 +373,15 @@ static struct dentry *__sdcardfs_lookup(struct dentry *dentry,
	lower_dentry = d_hash_and_lookup(lower_dir_dentry, &dname);
	if (IS_ERR(lower_dentry))
		return lower_dentry;
	if (lower_dentry)
		goto setup_lower;

	lower_dentry = d_alloc(lower_dir_dentry, &dname);
	if (!lower_dentry) {
		err = -ENOMEM;
		/* We called vfs_path_lookup earlier, and did not get a negative
		 * dentry then. Don't confuse the lower filesystem by forcing
		 * one on it now...
		 */
		err = -ENOENT;
		goto out;
	}
	d_add(lower_dentry, NULL); /* instantiate and hash */

setup_lower:
	lower_path.dentry = lower_dentry;
	lower_path.mnt = mntget(lower_dir_mnt);
	sdcardfs_set_lower_path(dentry, &lower_path);