projects
/
linux.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
04bb1ba
)
omfs_lookup(): report IO errors, use d_splice_alias()
author
Al Viro
<viro@zeniv.linux.org.uk>
Tue, 1 May 2018 00:00:22 +0000
(20:00 -0400)
committer
Al Viro
<viro@zeniv.linux.org.uk>
Tue, 22 May 2018 18:27:58 +0000
(14:27 -0400)
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
fs/omfs/dir.c
patch
|
blob
|
history
diff --git
a/fs/omfs/dir.c
b/fs/omfs/dir.c
index
b714652
..
4bee3a7
100644
(file)
--- a/
fs/omfs/dir.c
+++ b/
fs/omfs/dir.c
@@
-305,11
+305,10
@@
static struct dentry *omfs_lookup(struct inode *dir, struct dentry *dentry,
ino_t ino = be64_to_cpu(oi->i_head.h_self);
brelse(bh);
inode = omfs_iget(dir->i_sb, ino);
- if (IS_ERR(inode))
-
return ERR_CAST(inode
);
+ } else if (bh != ERR_PTR(-ENOENT)) {
+
inode = ERR_CAST(bh
);
}
- d_add(dentry, inode);
- return NULL;
+ return d_splice_alias(inode, dentry);
}
/* sanity check block's self pointer */