diff options
author | Julia Lawall <julia@diku.dk> | 2008-03-24 19:08:48 +0100 |
---|---|---|
committer | Steven Whitehouse <swhiteho@redhat.com> | 2008-03-31 10:41:46 +0100 |
commit | 773adff8e983cba1f5844c3be3be224ca6645f26 (patch) | |
tree | 369f9a4394176b0a8860e9558852d63453ccc9a4 /fs | |
parent | 58e9fee13e579df44922172dbe3c9e3ba3edf7a3 (diff) | |
download | op-kernel-dev-773adff8e983cba1f5844c3be3be224ca6645f26.zip op-kernel-dev-773adff8e983cba1f5844c3be3be224ca6645f26.tar.gz |
[GFS2] test for IS_ERR rather than 0
The function gfs2_inode_lookup always returns either a valid pointer or a
value made with ERR_PTR, so its result should be tested with IS_ERR, not
with a test for 0.
The problem was found using the following semantic match.
(http://www.emn.fr/x-info/coccinelle/)
//<smpl>
@a@
expression E, E1;
statement S,S1;
position p;
@@
E = gfs2_inode_lookup(...)
... when != E = E1
if@p (E) S else S1
@n@
position a.p;
expression E,E1;
statement S,S1;
@@
E = NULL
... when != E = E1
if@p (E) S else S1
@depends on !n@
expression E;
statement S,S1;
position a.p;
@@
* if@p (E)
S else S1
//</smpl>
Signed-off-by: Julia Lawall <julia@diku.dk>
Signed-off-by: Steven Whitehouse <swhiteho@redhat.com>
Diffstat (limited to 'fs')
-rw-r--r-- | fs/gfs2/ops_export.c | 2 |
1 files changed, 0 insertions, 2 deletions
diff --git a/fs/gfs2/ops_export.c b/fs/gfs2/ops_export.c index 334c7f8..990d9f4 100644 --- a/fs/gfs2/ops_export.c +++ b/fs/gfs2/ops_export.c @@ -204,8 +204,6 @@ static struct dentry *gfs2_get_dentry(struct super_block *sb, inode = gfs2_inode_lookup(sb, DT_UNKNOWN, inum->no_addr, 0, 0); - if (!inode) - goto fail; if (IS_ERR(inode)) { error = PTR_ERR(inode); goto fail; |