diff options
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 e4b75d6eda83..5365527ca43f 100644 --- a/fs/anon_inodes.c +++ b/fs/anon_inodes.c | |||
| @@ -111,10 +111,9 @@ struct file *anon_inode_getfile(const char *name, | |||
| 111 | path.mnt = mntget(anon_inode_mnt); | 111 | path.mnt = mntget(anon_inode_mnt); |
| 112 | /* | 112 | /* |
| 113 | * We know the anon_inode inode count is always greater than zero, | 113 | * We know the anon_inode inode count is always greater than zero, |
| 114 | * so we can avoid doing an igrab() and we can use an open-coded | 114 | * so ihold() is safe. |
| 115 | * atomic_inc(). | ||
| 116 | */ | 115 | */ |
| 117 | atomic_inc(&anon_inode_inode->i_count); | 116 | ihold(anon_inode_inode); |
| 118 | 117 | ||
| 119 | path.dentry->d_op = &anon_inodefs_dentry_operations; | 118 | path.dentry->d_op = &anon_inodefs_dentry_operations; |
| 120 | d_instantiate(path.dentry, anon_inode_inode); | 119 | d_instantiate(path.dentry, anon_inode_inode); |
| @@ -194,6 +193,7 @@ static struct inode *anon_inode_mkinode(void) | |||
| 194 | if (!inode) | 193 | if (!inode) |
| 195 | return ERR_PTR(-ENOMEM); | 194 | return ERR_PTR(-ENOMEM); |
| 196 | 195 | ||
| 196 | inode->i_ino = get_next_ino(); | ||
| 197 | inode->i_fop = &anon_inode_fops; | 197 | inode->i_fop = &anon_inode_fops; |
| 198 | 198 | ||
| 199 | inode->i_mapping->a_ops = &anon_aops; | 199 | inode->i_mapping->a_ops = &anon_aops; |
