diff options
Diffstat (limited to 'fs/nfs')
-rw-r--r-- | fs/nfs/dir.c | 2 | ||||
-rw-r--r-- | fs/nfs/getroot.c | 3 |
2 files changed, 2 insertions, 3 deletions
diff --git a/fs/nfs/dir.c b/fs/nfs/dir.c index e257172d438c..0fac7fea18ef 100644 --- a/fs/nfs/dir.c +++ b/fs/nfs/dir.c | |||
@@ -1580,7 +1580,7 @@ nfs_link(struct dentry *old_dentry, struct inode *dir, struct dentry *dentry) | |||
1580 | d_drop(dentry); | 1580 | d_drop(dentry); |
1581 | error = NFS_PROTO(dir)->link(inode, dir, &dentry->d_name); | 1581 | error = NFS_PROTO(dir)->link(inode, dir, &dentry->d_name); |
1582 | if (error == 0) { | 1582 | if (error == 0) { |
1583 | atomic_inc(&inode->i_count); | 1583 | ihold(inode); |
1584 | d_add(dentry, inode); | 1584 | d_add(dentry, inode); |
1585 | } | 1585 | } |
1586 | return error; | 1586 | return error; |
diff --git a/fs/nfs/getroot.c b/fs/nfs/getroot.c index a70e446e1605..ac7b814ce162 100644 --- a/fs/nfs/getroot.c +++ b/fs/nfs/getroot.c | |||
@@ -54,8 +54,7 @@ static int nfs_superblock_set_dummy_root(struct super_block *sb, struct inode *i | |||
54 | iput(inode); | 54 | iput(inode); |
55 | return -ENOMEM; | 55 | return -ENOMEM; |
56 | } | 56 | } |
57 | /* Circumvent igrab(): we know the inode is not being freed */ | 57 | ihold(inode); |
58 | atomic_inc(&inode->i_count); | ||
59 | /* | 58 | /* |
60 | * Ensure that this dentry is invisible to d_find_alias(). | 59 | * Ensure that this dentry is invisible to d_find_alias(). |
61 | * Otherwise, it may be spliced into the tree by | 60 | * Otherwise, it may be spliced into the tree by |