diff options
author | Mark Fasheh <mark.fasheh@oracle.com> | 2007-04-23 21:53:12 -0400 |
---|---|---|
committer | Mark Fasheh <mark.fasheh@oracle.com> | 2007-04-26 18:10:40 -0400 |
commit | 83418978827324918a8cd25ce5227312de1d4468 (patch) | |
tree | f7baefb1fc8721d6d8d1f1f937bc55535b13e18f /fs/ocfs2/inode.h | |
parent | 7cdfc3a1c3971c9125c317cb8c2525745851798e (diff) |
ocfs2: Cache extent records
The extent map code was ripped out earlier because of an inability to deal
with holes. This patch adds back a simpler caching scheme requiring far less
code.
Our old extent map caching was designed back when meta data block caching in
Ocfs2 didn't work very well, resulting in many disk reads. These days our
metadata caching is much better, resulting in no un-necessary disk reads. As
a result, extent caching doesn't have to be as fancy, nor does it have to
cache as many extents. Keeping the last 3 extents seen should be sufficient
to give us a small performance boost on some streaming workloads.
Signed-off-by: Mark Fasheh <mark.fasheh@oracle.com>
Diffstat (limited to 'fs/ocfs2/inode.h')
-rw-r--r-- | fs/ocfs2/inode.h | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/fs/ocfs2/inode.h b/fs/ocfs2/inode.h index aa84353d0d19..03ae075869ee 100644 --- a/fs/ocfs2/inode.h +++ b/fs/ocfs2/inode.h | |||
@@ -26,6 +26,8 @@ | |||
26 | #ifndef OCFS2_INODE_H | 26 | #ifndef OCFS2_INODE_H |
27 | #define OCFS2_INODE_H | 27 | #define OCFS2_INODE_H |
28 | 28 | ||
29 | #include "extent_map.h" | ||
30 | |||
29 | /* OCFS2 Inode Private Data */ | 31 | /* OCFS2 Inode Private Data */ |
30 | struct ocfs2_inode_info | 32 | struct ocfs2_inode_info |
31 | { | 33 | { |
@@ -63,6 +65,8 @@ struct ocfs2_inode_info | |||
63 | 65 | ||
64 | struct ocfs2_caching_info ip_metadata_cache; | 66 | struct ocfs2_caching_info ip_metadata_cache; |
65 | 67 | ||
68 | struct ocfs2_extent_map ip_extent_map; | ||
69 | |||
66 | struct inode vfs_inode; | 70 | struct inode vfs_inode; |
67 | }; | 71 | }; |
68 | 72 | ||