diff options
author | Julia Lawall <julia@diku.dk> | 2008-03-24 14:08:48 -0400 |
---|---|---|
committer | Steven Whitehouse <swhiteho@redhat.com> | 2008-03-31 05:41:46 -0400 |
commit | 773adff8e983cba1f5844c3be3be224ca6645f26 (patch) | |
tree | 369f9a4394176b0a8860e9558852d63453ccc9a4 /fs | |
parent | 58e9fee13e579df44922172dbe3c9e3ba3edf7a3 (diff) |
[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 334c7f85351b..990d9f4bc463 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, | |||
204 | inode = gfs2_inode_lookup(sb, DT_UNKNOWN, | 204 | inode = gfs2_inode_lookup(sb, DT_UNKNOWN, |
205 | inum->no_addr, | 205 | inum->no_addr, |
206 | 0, 0); | 206 | 0, 0); |
207 | if (!inode) | ||
208 | goto fail; | ||
209 | if (IS_ERR(inode)) { | 207 | if (IS_ERR(inode)) { |
210 | error = PTR_ERR(inode); | 208 | error = PTR_ERR(inode); |
211 | goto fail; | 209 | goto fail; |