Commit 367d002d authored by Amir Goldstein's avatar Amir Goldstein

ovl: clarify ovl_get_root() semantics

Change the semantics to take a reference on upperdentry instead
of transferrig the reference.

This is needed for upcoming port to new mount api.
Signed-off-by: default avatarAmir Goldstein <amir73il@gmail.com>
parent e4599d4b
...@@ -1922,6 +1922,8 @@ static struct dentry *ovl_get_root(struct super_block *sb, ...@@ -1922,6 +1922,8 @@ static struct dentry *ovl_get_root(struct super_block *sb,
ovl_set_upperdata(d_inode(root)); ovl_set_upperdata(d_inode(root));
ovl_inode_init(d_inode(root), &oip, ino, fsid); ovl_inode_init(d_inode(root), &oip, ino, fsid);
ovl_dentry_init_flags(root, upperdentry, oe, DCACHE_OP_WEAK_REVALIDATE); ovl_dentry_init_flags(root, upperdentry, oe, DCACHE_OP_WEAK_REVALIDATE);
/* root keeps a reference of upperdentry */
dget(upperdentry);
return root; return root;
} }
...@@ -2100,7 +2102,7 @@ static int ovl_fill_super(struct super_block *sb, void *data, int silent) ...@@ -2100,7 +2102,7 @@ static int ovl_fill_super(struct super_block *sb, void *data, int silent)
if (!root_dentry) if (!root_dentry)
goto out_free_oe; goto out_free_oe;
mntput(upperpath.mnt); path_put(&upperpath);
kfree(splitlower); kfree(splitlower);
sb->s_root = root_dentry; sb->s_root = root_dentry;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment