summaryrefslogtreecommitdiff
path: root/fs/ocfs2/inode.c
diff options
context:
space:
mode:
authorMark Fasheh <mark.fasheh@oracle.com>2007-01-17 12:31:35 -0800
committerMark Fasheh <mark.fasheh@oracle.com>2007-04-26 15:01:31 -0700
commit363041a5f74b953ab6b705ac9c88e5eda218a24b (patch)
treec0661c3f88978f2049693682f1cb94b20a8454c0 /fs/ocfs2/inode.c
parentdcd0538ff4e854fa9d7f4630b359ca8fdb5cb5a8 (diff)
downloadlwn-363041a5f74b953ab6b705ac9c88e5eda218a24b.tar.gz
lwn-363041a5f74b953ab6b705ac9c88e5eda218a24b.zip
ocfs2: temporarily remove extent map caching
The code in extent_map.c is not prepared to deal with a subtree being rotated between lookups. This can happen when filling holes in sparse files. Instead of a lengthy patch to update the code (which would likely lose the benefit of caching subtree roots), we remove most of the algorithms and implement a simple path based lookup. A less ambitious extent caching scheme will be added in a later patch. Signed-off-by: Mark Fasheh <mark.fasheh@oracle.com>
Diffstat (limited to 'fs/ocfs2/inode.c')
-rw-r--r--fs/ocfs2/inode.c6
1 files changed, 1 insertions, 5 deletions
diff --git a/fs/ocfs2/inode.c b/fs/ocfs2/inode.c
index 08d57a3d4e83..5ff8549eb1a3 100644
--- a/fs/ocfs2/inode.c
+++ b/fs/ocfs2/inode.c
@@ -1003,9 +1003,6 @@ void ocfs2_clear_inode(struct inode *inode)
"Clear inode of %llu, inode has io markers\n",
(unsigned long long)oi->ip_blkno);
- ocfs2_extent_map_drop(inode, 0);
- ocfs2_extent_map_init(inode);
-
status = ocfs2_drop_inode_locks(inode);
if (status < 0)
mlog_errno(status);
@@ -1102,8 +1099,7 @@ struct buffer_head *ocfs2_bread(struct inode *inode,
return NULL;
}
- tmperr = ocfs2_extent_map_get_blocks(inode, block, 1,
- &p_blkno, NULL);
+ tmperr = ocfs2_extent_map_get_blocks(inode, block, &p_blkno, NULL);
if (tmperr < 0) {
mlog_errno(tmperr);
goto fail;