diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2011-01-07 11:56:33 -0500 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2011-01-07 11:56:33 -0500 |
commit | b4a45f5fe8078bfc10837dbd5b98735058bc4698 (patch) | |
tree | df6f13a27610a3ec7eb4a661448cd779a8f84c79 /fs/anon_inodes.c | |
parent | 01539ba2a706ab7d35fc0667dff919ade7f87d63 (diff) | |
parent | b3e19d924b6eaf2ca7d22cba99a517c5171007b6 (diff) |
Merge branch 'vfs-scale-working' of git://git.kernel.org/pub/scm/linux/kernel/git/npiggin/linux-npiggin
* 'vfs-scale-working' of git://git.kernel.org/pub/scm/linux/kernel/git/npiggin/linux-npiggin: (57 commits)
fs: scale mntget/mntput
fs: rename vfsmount counter helpers
fs: implement faster dentry memcmp
fs: prefetch inode data in dcache lookup
fs: improve scalability of pseudo filesystems
fs: dcache per-inode inode alias locking
fs: dcache per-bucket dcache hash locking
bit_spinlock: add required includes
kernel: add bl_list
xfs: provide simple rcu-walk ACL implementation
btrfs: provide simple rcu-walk ACL implementation
ext2,3,4: provide simple rcu-walk ACL implementation
fs: provide simple rcu-walk generic_check_acl implementation
fs: provide rcu-walk aware permission i_ops
fs: rcu-walk aware d_revalidate method
fs: cache optimise dentry and inode for rcu-walk
fs: dcache reduce branches in lookup path
fs: dcache remove d_mounted
fs: fs_struct use seqlock
fs: rcu-walk for path lookup
...
Diffstat (limited to 'fs/anon_inodes.c')
-rw-r--r-- | fs/anon_inodes.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/fs/anon_inodes.c b/fs/anon_inodes.c index 57ce55b2564c..5fd38112a6ca 100644 --- a/fs/anon_inodes.c +++ b/fs/anon_inodes.c | |||
@@ -102,7 +102,7 @@ struct file *anon_inode_getfile(const char *name, | |||
102 | this.name = name; | 102 | this.name = name; |
103 | this.len = strlen(name); | 103 | this.len = strlen(name); |
104 | this.hash = 0; | 104 | this.hash = 0; |
105 | path.dentry = d_alloc(anon_inode_mnt->mnt_sb->s_root, &this); | 105 | path.dentry = d_alloc_pseudo(anon_inode_mnt->mnt_sb, &this); |
106 | if (!path.dentry) | 106 | if (!path.dentry) |
107 | goto err_module; | 107 | goto err_module; |
108 | 108 | ||
@@ -113,7 +113,7 @@ struct file *anon_inode_getfile(const char *name, | |||
113 | */ | 113 | */ |
114 | ihold(anon_inode_inode); | 114 | ihold(anon_inode_inode); |
115 | 115 | ||
116 | path.dentry->d_op = &anon_inodefs_dentry_operations; | 116 | d_set_d_op(path.dentry, &anon_inodefs_dentry_operations); |
117 | d_instantiate(path.dentry, anon_inode_inode); | 117 | d_instantiate(path.dentry, anon_inode_inode); |
118 | 118 | ||
119 | error = -ENFILE; | 119 | error = -ENFILE; |
@@ -232,7 +232,7 @@ static int __init anon_inode_init(void) | |||
232 | return 0; | 232 | return 0; |
233 | 233 | ||
234 | err_mntput: | 234 | err_mntput: |
235 | mntput(anon_inode_mnt); | 235 | mntput_long(anon_inode_mnt); |
236 | err_unregister_filesystem: | 236 | err_unregister_filesystem: |
237 | unregister_filesystem(&anon_inode_fs_type); | 237 | unregister_filesystem(&anon_inode_fs_type); |
238 | err_exit: | 238 | err_exit: |