diff options
Diffstat (limited to 'fs/ocfs2/suballoc.h')
-rw-r--r-- | fs/ocfs2/suballoc.h | 17 |
1 files changed, 13 insertions, 4 deletions
diff --git a/fs/ocfs2/suballoc.h b/fs/ocfs2/suballoc.h index 1a3c94cb9250..f212dc01a84b 100644 --- a/fs/ocfs2/suballoc.h +++ b/fs/ocfs2/suballoc.h | |||
@@ -86,20 +86,29 @@ int ocfs2_claim_clusters(struct ocfs2_super *osb, | |||
86 | u32 *cluster_start, | 86 | u32 *cluster_start, |
87 | u32 *num_clusters); | 87 | u32 *num_clusters); |
88 | 88 | ||
89 | int ocfs2_free_suballoc_bits(handle_t *handle, | ||
90 | struct inode *alloc_inode, | ||
91 | struct buffer_head *alloc_bh, | ||
92 | unsigned int start_bit, | ||
93 | u64 bg_blkno, | ||
94 | unsigned int count); | ||
89 | int ocfs2_free_dinode(handle_t *handle, | 95 | int ocfs2_free_dinode(handle_t *handle, |
90 | struct inode *inode_alloc_inode, | 96 | struct inode *inode_alloc_inode, |
91 | struct buffer_head *inode_alloc_bh, | 97 | struct buffer_head *inode_alloc_bh, |
92 | struct ocfs2_dinode *di); | 98 | struct ocfs2_dinode *di); |
93 | int ocfs2_free_extent_block(handle_t *handle, | ||
94 | struct inode *eb_alloc_inode, | ||
95 | struct buffer_head *eb_alloc_bh, | ||
96 | struct ocfs2_extent_block *eb); | ||
97 | int ocfs2_free_clusters(handle_t *handle, | 99 | int ocfs2_free_clusters(handle_t *handle, |
98 | struct inode *bitmap_inode, | 100 | struct inode *bitmap_inode, |
99 | struct buffer_head *bitmap_bh, | 101 | struct buffer_head *bitmap_bh, |
100 | u64 start_blk, | 102 | u64 start_blk, |
101 | unsigned int num_clusters); | 103 | unsigned int num_clusters); |
102 | 104 | ||
105 | static inline u64 ocfs2_which_suballoc_group(u64 block, unsigned int bit) | ||
106 | { | ||
107 | u64 group = block - (u64) bit; | ||
108 | |||
109 | return group; | ||
110 | } | ||
111 | |||
103 | static inline u32 ocfs2_cluster_from_desc(struct ocfs2_super *osb, | 112 | static inline u32 ocfs2_cluster_from_desc(struct ocfs2_super *osb, |
104 | u64 bg_blkno) | 113 | u64 bg_blkno) |
105 | { | 114 | { |