aboutsummaryrefslogtreecommitdiffstats
path: root/fs/ocfs2/alloc.h
diff options
context:
space:
mode:
authorMark Fasheh <mark.fasheh@oracle.com>2007-06-18 13:48:04 -0400
committerMark Fasheh <mark.fasheh@oracle.com>2007-07-10 20:32:00 -0400
commit328d5752e1259dfb29b7e65f6c2d145fddbaa750 (patch)
tree08198271a0382cafcc4c0de2fc1efcf35cb400af /fs/ocfs2/alloc.h
parentc3afcbb34426a9291e4c038540129053a72c3cd8 (diff)
ocfs2: btree changes for unwritten extents
Writes to a region marked as unwritten might result in a record split or merge. We can support splits by making minor changes to the existing insert code. Merges require left rotations which mostly re-use right rotation support functions. Signed-off-by: Mark Fasheh <mark.fasheh@oracle.com>
Diffstat (limited to 'fs/ocfs2/alloc.h')
-rw-r--r--fs/ocfs2/alloc.h6
1 files changed, 6 insertions, 0 deletions
diff --git a/fs/ocfs2/alloc.h b/fs/ocfs2/alloc.h
index cb02e53b593c..d3acf45225c2 100644
--- a/fs/ocfs2/alloc.h
+++ b/fs/ocfs2/alloc.h
@@ -35,6 +35,11 @@ int ocfs2_insert_extent(struct ocfs2_super *osb,
35 u64 start_blk, 35 u64 start_blk,
36 u32 new_clusters, 36 u32 new_clusters,
37 struct ocfs2_alloc_context *meta_ac); 37 struct ocfs2_alloc_context *meta_ac);
38struct ocfs2_cached_dealloc_ctxt;
39int ocfs2_mark_extent_written(struct inode *inode, struct buffer_head *di_bh,
40 handle_t *handle, u32 cpos, u32 len, u32 phys,
41 struct ocfs2_alloc_context *meta_ac,
42 struct ocfs2_cached_dealloc_ctxt *dealloc);
38int ocfs2_num_free_extents(struct ocfs2_super *osb, 43int ocfs2_num_free_extents(struct ocfs2_super *osb,
39 struct inode *inode, 44 struct inode *inode,
40 struct ocfs2_dinode *fe); 45 struct ocfs2_dinode *fe);
@@ -102,6 +107,7 @@ int ocfs2_commit_truncate(struct ocfs2_super *osb,
102 107
103int ocfs2_find_leaf(struct inode *inode, struct ocfs2_extent_list *root_el, 108int ocfs2_find_leaf(struct inode *inode, struct ocfs2_extent_list *root_el,
104 u32 cpos, struct buffer_head **leaf_bh); 109 u32 cpos, struct buffer_head **leaf_bh);
110int ocfs2_search_extent_list(struct ocfs2_extent_list *el, u32 v_cluster);
105 111
106/* 112/*
107 * Helper function to look at the # of clusters in an extent record. 113 * Helper function to look at the # of clusters in an extent record.