Searched hist:"5835 f339" (Results 1 – 1 of 1) sorted by relevance
/openbmc/linux/fs/fuse/ |
H A D | dir.c | 5835f339 Thu Sep 05 04:44:42 CDT 2013 Miklos Szeredi <mszeredi@suse.cz> fuse: use d_materialise_unique()
Use d_materialise_unique() instead of d_splice_alias(). This allows dentry subtrees to be moved to a new place if there moved, even if something is referencing a dentry in the subtree (open fd, cwd, etc..).
This will also allow us to drop a subtree if it is found to be replaced by something else. In this case the disconnected subtree can later be reconnected to its new location.
d_materialise_unique() ensures that a directory entry only ever has one alias. We keep fc->inst_mutex around the calls for d_materialise_unique() on directories to prevent a race with mkdir "stealing" the inode.
Signed-off-by: Miklos Szeredi <mszeredi@suse.cz> Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
|