aboutsummaryrefslogtreecommitdiffstats
path: root/fs/ocfs2/suballoc.h
diff options
context:
space:
mode:
authorJoel Becker <joel.becker@oracle.com>2008-11-13 17:49:13 -0500
committerMark Fasheh <mfasheh@suse.com>2009-01-05 11:36:53 -0500
commit57e3e7971136003c96766346049aa73b82cab079 (patch)
tree4ba192d7507c77bc1bebd20ba6d82fbbe3da5428 /fs/ocfs2/suballoc.h
parent10995aa2451afa20b721cc7de856cae1a13dba57 (diff)
ocfs2: Consolidate validation of group descriptors.
Currently the validation of group descriptors is directly duplicated so that one version can error the filesystem and the other (resize) can just report the problem. Consolidate to one function that takes a boolean. Wrap that function with the old call for the old users. This is in preparation for lifting the read+validate step into a single function. Signed-off-by: Joel Becker <joel.becker@oracle.com> Signed-off-by: Mark Fasheh <mfasheh@suse.com>
Diffstat (limited to 'fs/ocfs2/suballoc.h')
-rw-r--r--fs/ocfs2/suballoc.h20
1 files changed, 17 insertions, 3 deletions
diff --git a/fs/ocfs2/suballoc.h b/fs/ocfs2/suballoc.h
index 4df159d8f450..7adfcc478bdb 100644
--- a/fs/ocfs2/suballoc.h
+++ b/fs/ocfs2/suballoc.h
@@ -165,9 +165,23 @@ void ocfs2_free_ac_resource(struct ocfs2_alloc_context *ac);
165u64 ocfs2_which_cluster_group(struct inode *inode, u32 cluster); 165u64 ocfs2_which_cluster_group(struct inode *inode, u32 cluster);
166 166
167/* somewhat more expensive than our other checks, so use sparingly. */ 167/* somewhat more expensive than our other checks, so use sparingly. */
168int ocfs2_check_group_descriptor(struct super_block *sb, 168/*
169 struct ocfs2_dinode *di, 169 * By default, ocfs2_validate_group_descriptor() calls ocfs2_error() when it
170 struct ocfs2_group_desc *gd); 170 * finds a problem. A caller that wants to check a group descriptor
171 * without going readonly passes a nonzero clean_error. This is only
172 * resize, really.
173 */
174int ocfs2_validate_group_descriptor(struct super_block *sb,
175 struct ocfs2_dinode *di,
176 struct ocfs2_group_desc *gd,
177 int clean_error);
178static inline int ocfs2_check_group_descriptor(struct super_block *sb,
179 struct ocfs2_dinode *di,
180 struct ocfs2_group_desc *gd)
181{
182 return ocfs2_validate_group_descriptor(sb, di, gd, 0);
183}
184
171int ocfs2_lock_allocators(struct inode *inode, struct ocfs2_extent_tree *et, 185int ocfs2_lock_allocators(struct inode *inode, struct ocfs2_extent_tree *et,
172 u32 clusters_to_add, u32 extents_to_split, 186 u32 clusters_to_add, u32 extents_to_split,
173 struct ocfs2_alloc_context **data_ac, 187 struct ocfs2_alloc_context **data_ac,