Commit 3ccb354d authored by Eric W. Biederman's avatar Eric W. Biederman Committed by Al Viro

vfs: Document the effect of d_revalidate on d_find_alias

d_drop or check_submounts_and_drop called from d_revalidate can result
in renamed directories with child dentries being unhashed.  These
renamed and drop directory dentries can be rehashed after
d_materialise_unique uses d_find_alias to find them.
Reviewed-by: default avatarMiklos Szeredi <miklos@szeredi.hu>
Signed-off-by: default avatar"Eric W. Biederman" <ebiederm@xmission.com>
Signed-off-by: default avatarAl Viro <viro@zeniv.linux.org.uk>
parent 9ea459e1
...@@ -761,7 +761,8 @@ EXPORT_SYMBOL(dget_parent); ...@@ -761,7 +761,8 @@ EXPORT_SYMBOL(dget_parent);
* acquire the reference to alias and return it. Otherwise return NULL. * acquire the reference to alias and return it. Otherwise return NULL.
* Notice that if inode is a directory there can be only one alias and * Notice that if inode is a directory there can be only one alias and
* it can be unhashed only if it has no children, or if it is the root * it can be unhashed only if it has no children, or if it is the root
* of a filesystem. * of a filesystem, or if the directory was renamed and d_revalidate
* was the first vfs operation to notice.
* *
* If the inode has an IS_ROOT, DCACHE_DISCONNECTED alias, then prefer * If the inode has an IS_ROOT, DCACHE_DISCONNECTED alias, then prefer
* any other hashed alias over that one. * any other hashed alias over that one.
......
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