aboutsummaryrefslogtreecommitdiffstats
path: root/fs/ocfs2/inode.c
diff options
context:
space:
mode:
authorTao Ma <boyu.mt@taobao.com>2011-02-20 22:18:30 -0500
committerTao Ma <boyu.mt@taobao.com>2011-02-20 22:18:30 -0500
commit6218b90e7669d83cb8ad744f3400205d260597f2 (patch)
tree90f0f5e49ceb0cf2c40b100ec11a11beb25f0f0e /fs/ocfs2/inode.c
parent468eedde23d6c9335935773f4f5764267d5a7763 (diff)
ocfs2: Little refactoring against ocfs2_iget.
ocfs2_iget is used to get/create inode. Only iget5_locked will give us an inode = NULL. So move this check ahead of ocfs2_read_locked_inode so that we don't need to check inode before we read and unlock inode. This is also helpful for trace event(see the next patch). Signed-off-by: Tao Ma <boyu.mt@taobao.com>
Diffstat (limited to 'fs/ocfs2/inode.c')
-rw-r--r--fs/ocfs2/inode.c10
1 files changed, 5 insertions, 5 deletions
diff --git a/fs/ocfs2/inode.c b/fs/ocfs2/inode.c
index a96e56f12728..8ec0cb01cb7c 100644
--- a/fs/ocfs2/inode.c
+++ b/fs/ocfs2/inode.c
@@ -152,16 +152,16 @@ struct inode *ocfs2_iget(struct ocfs2_super *osb, u64 blkno, unsigned flags,
152 /* inode was *not* in the inode cache. 2.6.x requires 152 /* inode was *not* in the inode cache. 2.6.x requires
153 * us to do our own read_inode call and unlock it 153 * us to do our own read_inode call and unlock it
154 * afterwards. */ 154 * afterwards. */
155 if (inode && inode->i_state & I_NEW) {
156 mlog(0, "Inode was not in inode cache, reading it.\n");
157 ocfs2_read_locked_inode(inode, &args);
158 unlock_new_inode(inode);
159 }
160 if (inode == NULL) { 155 if (inode == NULL) {
161 inode = ERR_PTR(-ENOMEM); 156 inode = ERR_PTR(-ENOMEM);
162 mlog_errno(PTR_ERR(inode)); 157 mlog_errno(PTR_ERR(inode));
163 goto bail; 158 goto bail;
164 } 159 }
160 if (inode->i_state & I_NEW) {
161 mlog(0, "Inode was not in inode cache, reading it.\n");
162 ocfs2_read_locked_inode(inode, &args);
163 unlock_new_inode(inode);
164 }
165 if (is_bad_inode(inode)) { 165 if (is_bad_inode(inode)) {
166 iput(inode); 166 iput(inode);
167 inode = ERR_PTR(-ESTALE); 167 inode = ERR_PTR(-ESTALE);