diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2011-01-16 14:31:50 -0500 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2011-01-16 14:31:50 -0500 |
commit | f8206b925fb0eba3a11839419be118b09105d7b1 (patch) | |
tree | 5d41b356a043da09c816ed80bd79d1ea8b2b47e5 /fs/dcache.c | |
parent | 1b59be2a6cdcb5a12e18d8315c07c94a624de48f (diff) | |
parent | f03c65993b98eeb909a4012ce7833c5857d74755 (diff) |
Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6
* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6: (23 commits)
sanitize vfsmount refcounting changes
fix old umount_tree() breakage
autofs4: Merge the remaining dentry ops tables
Unexport do_add_mount() and add in follow_automount(), not ->d_automount()
Allow d_manage() to be used in RCU-walk mode
Remove a further kludge from __do_follow_link()
autofs4: Bump version
autofs4: Add v4 pseudo direct mount support
autofs4: Fix wait validation
autofs4: Clean up autofs4_free_ino()
autofs4: Clean up dentry operations
autofs4: Clean up inode operations
autofs4: Remove unused code
autofs4: Add d_manage() dentry operation
autofs4: Add d_automount() dentry operation
Remove the automount through follow_link() kludge code from pathwalk
CIFS: Use d_automount() rather than abusing follow_link()
NFS: Use d_automount() rather than abusing follow_link()
AFS: Use d_automount() rather than abusing follow_link()
Add an AT_NO_AUTOMOUNT flag to suppress terminal automount
...
Diffstat (limited to 'fs/dcache.c')
-rw-r--r-- | fs/dcache.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/fs/dcache.c b/fs/dcache.c index 274a22250380..9f493ee4dcba 100644 --- a/fs/dcache.c +++ b/fs/dcache.c | |||
@@ -1380,8 +1380,11 @@ EXPORT_SYMBOL(d_set_d_op); | |||
1380 | static void __d_instantiate(struct dentry *dentry, struct inode *inode) | 1380 | static void __d_instantiate(struct dentry *dentry, struct inode *inode) |
1381 | { | 1381 | { |
1382 | spin_lock(&dentry->d_lock); | 1382 | spin_lock(&dentry->d_lock); |
1383 | if (inode) | 1383 | if (inode) { |
1384 | if (unlikely(IS_AUTOMOUNT(inode))) | ||
1385 | dentry->d_flags |= DCACHE_NEED_AUTOMOUNT; | ||
1384 | list_add(&dentry->d_alias, &inode->i_dentry); | 1386 | list_add(&dentry->d_alias, &inode->i_dentry); |
1387 | } | ||
1385 | dentry->d_inode = inode; | 1388 | dentry->d_inode = inode; |
1386 | dentry_rcuwalk_barrier(dentry); | 1389 | dentry_rcuwalk_barrier(dentry); |
1387 | spin_unlock(&dentry->d_lock); | 1390 | spin_unlock(&dentry->d_lock); |