GFS2: Fix error path in gfs2_lookup_by_inum()
authorSteven Whitehouse <swhiteho@redhat.com>
Tue, 18 Jan 2011 14:49:08 +0000 (14:49 +0000)
committerSteven Whitehouse <swhiteho@redhat.com>
Tue, 18 Jan 2011 14:49:08 +0000 (14:49 +0000)
commit24d9765fc18c7838ccdbb0d71fb706321d9b824c
tree75875b69c1bb694d2ad5e1ab19f278bf7d3a8acc
parent23c3010808de86f21436eb822aacfa551bfc17e4
GFS2: Fix error path in gfs2_lookup_by_inum()

In the (impossible, except if there is fs corruption) error path
in gfs2_lookup_by_inum() if the call to gfs2_inode_refresh()
fails, it was leaving the function by calling iput() rather
than iget_failed(). This would cause future lookups of the same
inode to block forever.

This patch fixes the problem by moving the call to gfs2_inode_refresh()
into gfs2_inode_lookup() where iget_failed() is part of the error path
already. Also this cleans up some unreachable code and makes
gfs2_set_iop() static.

Signed-off-by: Steven Whitehouse <swhiteho@redhat.com>
fs/gfs2/inode.c
fs/gfs2/inode.h