diff options
Diffstat (limited to 'fs/reiserfs/inode.c')
-rw-r--r-- | fs/reiserfs/inode.c | 13 |
1 files changed, 2 insertions, 11 deletions
diff --git a/fs/reiserfs/inode.c b/fs/reiserfs/inode.c index 5699171212ae..6c4c2c69449f 100644 --- a/fs/reiserfs/inode.c +++ b/fs/reiserfs/inode.c | |||
@@ -1522,7 +1522,6 @@ static struct dentry *reiserfs_get_dentry(struct super_block *sb, | |||
1522 | 1522 | ||
1523 | { | 1523 | { |
1524 | struct cpu_key key; | 1524 | struct cpu_key key; |
1525 | struct dentry *result; | ||
1526 | struct inode *inode; | 1525 | struct inode *inode; |
1527 | 1526 | ||
1528 | key.on_disk_key.k_objectid = objectid; | 1527 | key.on_disk_key.k_objectid = objectid; |
@@ -1535,16 +1534,8 @@ static struct dentry *reiserfs_get_dentry(struct super_block *sb, | |||
1535 | inode = NULL; | 1534 | inode = NULL; |
1536 | } | 1535 | } |
1537 | reiserfs_write_unlock(sb); | 1536 | reiserfs_write_unlock(sb); |
1538 | if (!inode) | 1537 | |
1539 | inode = ERR_PTR(-ESTALE); | 1538 | return d_obtain_alias(inode); |
1540 | if (IS_ERR(inode)) | ||
1541 | return ERR_CAST(inode); | ||
1542 | result = d_alloc_anon(inode); | ||
1543 | if (!result) { | ||
1544 | iput(inode); | ||
1545 | return ERR_PTR(-ENOMEM); | ||
1546 | } | ||
1547 | return result; | ||
1548 | } | 1539 | } |
1549 | 1540 | ||
1550 | struct dentry *reiserfs_fh_to_dentry(struct super_block *sb, struct fid *fid, | 1541 | struct dentry *reiserfs_fh_to_dentry(struct super_block *sb, struct fid *fid, |